海妖 发表于 2015-1-16 22:14:01

ASP教程之关于经常使用的婚配正则表达式和实例

缺点:正版成本价格贵(盗版就不说了)、不够安全,大多数服务器用windows系统,没有linux安全正则婚配中笔墨符的正则表达式:

婚配双字节字符(包含汉字在内):[^x00-xff]

使用:盘算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

String.prototype.len=function(){returnthis.replace([^x00-xff]/g,"aa").length;}

婚配空行的正则表达式:
*

婚配HTML标志的正则表达式:/<(.*)>.*</1>|<(.*)/>/

婚配首尾空格的正则表达式:(^s*)|(s*$)

使用:javascript中没有像vbscript那样的trim函数,我们就能够使用这个表达式来完成,以下:

String.prototype.trim=function()
{
returnthis.replace(/(^s*)|(s*$)/g,"");
}

使用正则表达式分化和转换IP地点:

上面是使用正则表达式婚配IP地点,并将IP地点转换成对应数值的Javascript程序:

functionIP2V(ip)
{
re=/(d+).(d+).(d+).(d+)/g//婚配IP地点的正则表达式
if(re.test(ip))
{
returnRegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegExp.$3*255+RegExp.$4*1
}
else
{
thrownewError("NotavalidIPaddress!")
}
}

不外下面的程序假如不必正则表达式,而间接用split函数来分化大概更复杂,程序以下:

varip="10.100.20.168"
ip=ip.split(".")
alert("IP值是:"+(ip*255*255*255+ip*255*255+ip*255+ip*1))

婚配Email地点的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*

婚配网址URL的正则表达式:http://(+.)++(/*)?

使用正则表达式往除字串中反复的字符的算法程序:[注:此程序不准确,缘故原由见本贴复兴]

vars="abacabefgeeii"
vars1=s.replace(/(.).*1/g,"$1")
varre=newRegExp("["+s1+"]","g")
vars2=s.replace(re,"")
alert(s1+s2)//了局为:abcefgi

我本来在CSDN上发贴追求一个表达式来完成往除反复字符的办法,终极没有找到,这是我能想到的最复杂的完成办法。思绪是利用后向援用掏出包含反复的字符,再以反复的字符创建第二个表达式,取到不反复的字符,二者串联。这个办法关于字符按次有请求的字符串大概不合用。

得用正则表达式从URL地点中提取文件名的javascript程序,以下了局为page1

s="http://www.9499.net/page1.htm"
s=s.replace(/(.*/){0,}([^.]+).*/ig,"$2")
alert(s)

使用正则表达式限定网页表单里的文本框输出内容:

用正则表达式限定只能输出中文:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,)"onbeforepaste="clipboardData.setData(text,clipboardData.getData(text).replace(/[^u4E00-u9FA5]/g,))"

用正则表达式限定只能输出全角字符:onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,)"onbeforepaste="clipboardData.setData(text,clipboardData.getData(text).replace(/[^uFF00-uFFFF]/g,))"

用正则表达式限定只能输出数字:onkeyup="value=value.replace(/[^d]/g,)"onbeforepaste="clipboardData.setData(text,clipboardData.getData(text).replace(/[^d]/g,))"

用正则表达式限定只能输出数字和英文:onkeyup="value=value.replace(//g,)"onbeforepaste="clipboardData.setData(text,clipboardData.getData(text).replace(/[^d]/g,))"缺点:正版成本价格贵(盗版就不说了)、不够安全,大多数服务器用windows系统,没有linux安全

精灵巫婆 发表于 2015-1-19 05:25:20

我想问如何掌握学习节奏(先学什么再学什么)最好详细点?

乐观 发表于 2015-1-27 07:27:41

那么,ASP.Net有哪些改进呢?

变相怪杰 发表于 2015-2-5 04:33:53

先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习

第二个灵魂 发表于 2015-2-11 05:15:51

我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。

小魔女 发表于 2015-3-1 22:30:19

我想问如何掌握学习节奏(先学什么再学什么)最好详细点?

只想知道 发表于 2015-3-11 01:04:53

下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。

海妖 发表于 2015-3-17 17:37:34

完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。

活着的死人 发表于 2015-3-24 17:16:58

封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
页: [1]
查看完整版本: ASP教程之关于经常使用的婚配正则表达式和实例