仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 699|回复: 9
打印 上一主题 下一主题

[学习教程] ASP网页设计ASP中正则表达式的使用

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 23:50:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
强大的可扩展性。ASP具有强大的扩展性,可以实现与多种网络、硬件设备的连接:通过专用的通讯线路远程接入企业;通过远程拨号服务器为远程拨号客户提供服务;通过WAP为移动电话互联网客户服务。正则|正则1、正则表达式概述
  2、正则表达式在VBScript中的使用
  3、正则表达式在VavaScript中的使用
  4、示例
  5、总结

  1、正则表达式概述
  假如本来没有利用过正则表达式,那末大概对这个术语和观点会不太熟习。不外,它们并非您设想的那末别致。
  请回忆一下在硬盘上是怎样查找文件的。您一定会利用?和*字符来匡助查找您正寻觅的文件。?字符婚配文件名中的单个字符,而*则婚配一个或多个字符。一个如data?.dat的形式能够找到下述文件:data1.dat、data2.dat等等。假如利用*字符取代?字符,则将扩展找到的文件数目。data*.dat能够婚配下述一切文件名:data.dat、data1.dat、data12.dat等等,只管这类搜刮文件的办法一定很有效,但也非常无限。?和*通配符的无限才能可使你对正则表达式能做甚么有一个观点,不外正则表达式的功效更壮大,也更天真。
  在我们编写ASP程序时,常常会判别一个字符串的无效性,如;一个串是不是是数字、是不是是无效的Email地点等等。假如不利用正则表达式,那末判别的程序会很长,而且简单堕落,假如利用正则表达式,这些判别就是一件很轻松的事情了。前面我们将先容怎样判别数字和Email地点的无效性。
  在典范的搜刮和交换操纵中,必需供应要查找切实其实切笔墨。这类手艺关于静态文本中的复杂搜刮和交换义务大概充足了,可是因为它缺少天真性,因而在搜刮静态文本时就有坚苦了,乃至是不成能的。
  利用正则表达式,能完成些甚么事变呢?
  测试字符串的某个形式。比方,能够对一个输出字符串举行测试,看在该字符串是不是存在一个德律风号码形式或一个信誉卡号码形式。这称为数占有效性考证。
  交换文本。能够在文档中利用一个正则表达式来标识特定笔墨,然后能够全体将其删除,大概交换为其余笔墨。
  依据形式婚配从字符串中提取一个子字符串。能够用来在文本或输出字段中查找特定笔墨。
  比方,假如必要搜刮全部web站点来删除某些过期的质料并交换某些HTML格局化标志,则可使用正则表达式对每一个文件举行测试,看在该文件中是不是存在所要查找的质料或HTML格局化标志。用这个办法,就能够将受影响的文件局限减少到包括要删除或变动的质料的那些文件。然后可使用正则表达式来删除过期的质料,最初,能够再次利用正则表达式来查找并交换那些必要交换的标志。
  那末,正则表达式语法的语法是怎样呢?
  一个正则表达式就是由一般字符(比方字符a到z)和特别字符(称为元字符)构成的笔墨形式。该形式形貌在查找笔墨主体时待婚配的一个或多个字符串。正则表达式作为一个模板,将某个字符形式与所搜刮的字符串举行婚配。
  这里有一些大概会碰到的正则表达式示例:
  /^[        ]*$/"^[        ]*$"婚配一个空缺行。
  /d{2}-d{5}/"d{2}-d{5}"考证一个ID号码是不是由一个2位数字,一个连字符和一个5位数字构成。
  /<(.*)>.*</1>/"<(.*)>.*</1>"婚配一个HTML标志。

  2、正则表达式在VBScript中的使用
  VBScript利用RegExp工具、Matches汇合和Match工具供应正则表达式撑持功效。我们仍是先看一个例子。
<%
FunctionRegExpTest(patrn,strng)
DimregEx,Match,Matches  创建变量。
SetregEx=NewRegExp  创建正则表达式。
regEx.Pattern=patrn  设置形式。
regEx.IgnoreCase=True  设置是不是辨别字符巨细写。
regEx.Global=True  设置全局可用性。
SetMatches=regEx.Execute(strng)  实行搜刮。
ForEachMatchinMatches  遍历婚配汇合。
RetStr=RetStr&"Matchfoundatposition"
RetStr=RetStr&Match.FirstIndex&".MatchValueis"
RetStr=RetStr&Match.Value&"."&"<BR>"
Next
RegExpTest=RetStr
EndFunction
response.writeRegExpTest("[ij]s.","IS1Js2IS3is4")
%>
在这个例子中,我们查找字符串中有没有is大概js这两个词,疏忽巨细写。运转的了局以下:
Matchfoundatposition0.MatchValueisIS1.
Matchfoundatposition4.MatchValueisJs2.
Matchfoundatposition8.MatchValueisIS3.
Matchfoundatposition12.MatchValueisis4.
上面我们就先容这三个工具和汇合。
  1、RegExp工具是最主要的一个工具,它有几个属性,个中:
  ○Global属性,设置或前往一个Boolean值,该值指明在全部搜刮字符串时形式是全体婚配仍是只婚配第一个。假如搜刮使用于全部字符串,Global属性的值为True,不然其值为False。默许的设置为False。
  ○IgnoreCase属性,设置或前往一个Boolean值,指明形式搜刮是不是辨别巨细写。假如搜刮是辨别巨细写的,则IgnoreCase属性为False;不然为True。缺省值为False。
  ○Pattern属性,设置或前往被搜刮的正则表达式形式。必选项。老是一个RegExp工具变量。
  2、Match工具
  婚配搜刮的了局是寄存在Match工具中,供应了对正则表达式婚配的只读属性的会见。Match工具只能经由过程RegExp工具的Execute办法来创立,该办法实践上前往了Match工具的汇合。一切的Match工具属性都是只读的。在实行正则表达式时,大概发生零个或多个Match工具。每一个Match工具供应了被正则表达式搜刮找到的字符串的会见、字符串的长度,和找到婚配的索引地位等。
  ○FirstIndex属性,前往在搜刮字符串中婚配的地位。FirstIndex属性利用从零起算的偏移量,该偏移量是相对搜刮字符串的肇端地位而言的。换言之,字符串中的第一个字符被标识为字符0
  ○Length属性,前往在字符串搜刮中找到的婚配的长度。
  ○Value属性,前往在一个搜刮字符串中找到的婚配的值或文本。
  3、Matches汇合
  正则表达式Match工具的汇合。Matches汇合中包括多少自力的Match工具,只能利用RegExp工具的Execute办法来创立之。与自力的Match工具属性不异,Matches`汇合的一个属性是只读的。在实行正则表达式时,大概发生零个或多个Match工具。每一个Match工具都供应了与正则表达式婚配的字符串的会见出口、字符串的长度,和标识婚配地位的索引。
  进修了这三个工具和汇合,怎样使用于字符串的判别和交换呢?regExp工具的三个办法恰好办理了这个成绩,它们是Replace办法、Test办法和Execute办法。
  1、Replace办法
  交换在正则表达式查找中找到的文本。我们仍是先看个例子:上面的例子申明了Replace办法的用法。
<%
FunctionReplaceTest(patrn,replStr)
DimregEx,str1创建变量。
str1="Thequickbrown</p>
[1][2][3]下一页

楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。
再现理想 该用户已被删除
沙发
发表于 2015-1-20 12:19:12 | 只看该作者
Session:这个存储跟客户端会话过程的数据,默认20分钟失效
因胸联盟 该用户已被删除
板凳
发表于 2015-1-23 08:27:23 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
飘飘悠悠 该用户已被删除
地板
发表于 2015-1-24 11:27:11 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
乐观 该用户已被删除
5#
发表于 2015-2-1 08:38:10 | 只看该作者
他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
小女巫 该用户已被删除
6#
发表于 2015-2-7 01:56:58 | 只看该作者
不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍
精灵巫婆 该用户已被删除
7#
发表于 2015-2-19 15:32:49 | 只看该作者
作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。
深爱那片海 该用户已被删除
8#
发表于 2015-3-6 15:00:38 | 只看该作者
ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。
山那边是海 该用户已被删除
9#
发表于 2015-3-13 02:10:28 | 只看该作者
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
小妖女 该用户已被删除
10#
发表于 2015-3-20 10:14:04 | 只看该作者
那么,ASP.Net有哪些改进呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-21 19:34

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表