澳门新葡萄京娱乐场动态网页制作PHP常用的正则表达式

相配普通话字符的正则表明式: [u4e00-u9fa5]
相称双字节字符(包蕴汉字在内卡塔尔(قطر‎: [^x00-xff]
应用:总括字符串的尺寸String.prototype.len=function(卡塔尔(قطر‎{return
this.replace([^x00-xff]/g,aaState of Qatar.length;} 匹配空行的正则表达式: n[s|
]*r 相称HTML标识的正则表达式: /(.*).*/|(.*State of Qatar //
匹配首尾空格的正则表明式: (^s*)|(s*$卡塔尔(قطر‎应用:javascript中绝非像vbscript那样的trim函数,我们就能够利用那个表明式来贯彻,如下:String.prototype.trim
= function(State of Qatar {return this.replace(/(^s*)|(s*$卡塔尔国/g, 卡塔尔;}
利用正则表达式分解和转移IP地址:
上面是使用正则表明式相配IP地址,并将IP地址调换到对应数值的javascript程序:function
IP2V(ipState of Qatar {re=/(d 卡塔尔国.(d State of Qatar.(d 卡塔尔国.(d 卡塔尔国/g
//相称IP地址的正则表明式if(re.test(ip卡塔尔(قطر‎State of Qatar {return
RegExp.*Math.pow(255,3)) RegExp.*Math.pow(255,2)) RegExp.*255
RegExp.*1}else {throw new Error(Not a valid IP address!卡塔尔}}
不过上边的程序一旦不用正则表达式,而直接用split函数来讲明恐怕更简便,程序如下:var
ip=10.100.20.168ip=ip.split(.卡塔尔国alert(IP值是: (ip[0]*255*255*255
ip[1]*255*255 ip[2]*255 ip[3]*1卡塔尔卡塔尔(قطر‎ 相配Email地址的正则表明式:
w ([- .]w )*@w ([-.]w )*.w ([-.]w )* 相称网站UTucsonL的正则表明式:
([w-] .) [w-] (/[w- ./?%=]*卡塔尔?
利用正则表明式去除字串中再一次的字符的算法程序:var s=abacabefgeeiivar
s1=s.replace(/(.卡塔尔国.*/g,)var re=new RegExp([ s1 ],g卡塔尔var
s2=s.replace(re,卡塔尔国alert(s1 s2卡塔尔(قطر‎ //结果为:abcefgi
用正则表明式从USportageL地址中提取文件名的javascript程序,如下结果为page1s=(/(.*/)([^.]
).*/ig,State of Qataralert(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,”State of Qatar卡塔尔(قطر‎用正则表明式约束只可以输入数字:onkeyup=value=value.replace(/[^d]/g,”)
onbeforepaste=clipboardData.setData(‘text’,clipboardData.getData(‘text’).replace(/[^d]/g,”卡塔尔)用正则表明式节制只好输入数字和日语:onkeyup=value=value.replace(/[W]/g,”)
onbeforepaste=clipboardData.setData(‘text’,clipboardData.getData(‘text’).replace(/[^d]/g,”)

1.非负整数         /^d+$/
     2.正整数           /^[0-9]*[1-9][0-9]*$/
     3.非正整数       /^((-d+)|(0+))$/
     4.负整数           /^-[0-9]*[1-9][0-9]*$/
     5.整数               /^-?d+$/
     6.非负浮点数     /^d+(.d+)?$/
     7.正浮点数       /^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$/
     8.非正浮点数     /^((-d+(.d+)?)|(0+(.0+)?))$/
     9.负浮点数         /^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$/
     10.浮点数         /^(-?d+)(.d+)?$/
     11.数字             /^d+(.{1}d+)?$/
     12.由27个Lithuania语字母组成的字符串                     /^[A-Za-z]+$/
     13.由贰十多个Romania语字母的大写组成的字符串           /^[A-Z]+$/
     14.由二十七个意国语字母的小写组成的字符串           /^[a-z]+$/
     15.由数字和三十多少个匈牙利语字母组成的字符串           /^[A-Za-z0-9]+$/
     16.由数字、贰贰拾个日文字母也许下划线组成的字符串             /^w+$/
     17.相配全数单字节长度的字符组成的字符串                       /^[x00-xff]+$/
     18.相称全体双字节长度的字符组成的字符串                       /^[^x00-xff]+$/
     19.字符串是不是富含双字节字                                                 /[^x00-xff]+/
     20.email地址             /^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/
         或者                     /w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*/
     21.url地址                 /^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$/
         或者                     / ./?%&=]*)?/
     22.相称普通话字符的正则             /[u4e00-u9fa5]/
     23.相称双字节字符(包蕴汉字在内卡塔尔             /[^x00-xff]/
         应用:总结字符串的长度(五个双字节字符长度计2,ASCII字符计1卡塔尔国
             String.prototype.len=function(){
                 return this.replace([^x00-xff]/g,”aa”).length;
             }
     24.相配空行的正则             /n[s| ]*r/
     25.相称HTML标志的正则             /<(.*)>.*</1>|<(.*) />/
     26.相配首尾空格的正则               /(^s*)|(s*$)/
         应用:javascript中从不像vbscript那样的trim函数,大家就足以选取这些表明式来落到实处,如下:
             String.prototype.trim = function(){
                 return this.replace(/(^s*)|(s*$)/g, “”);
             }
     27.相称IP地址的正则             /(d+卡塔尔国.(d+卡塔尔国.(d+State of Qatar.(d+State of Qatar/
         应用:利用正则表达式相称IP地址,并将IP地址调换来对应数值的Javascript程序:
             function IP2V(ip){
                 re=/(d+).(d+).(d+).(d+)/g;
                 if(re.test(ip)){
                     return RegExp.$1*Math.pow(255,3))+
                     RegExp.$2*Math.pow(255,2))+
                     RegExp.$3*255+RegExp.$4*1;
                 }
                 else{
                     throw new Error(“Not a valid IP address!”);
                 }
             }
         其实一贯用split函数来疏解也许更轻松,程序如下:
             var ip=”10.100.20.168″;
             ip=ip.split(“.”);
             alert(“IP值是:”+(ip[0]*255*255*255+ip[1]*255*255+ip[2]*255+ip[3]*1));
     28.去除字串中另行的字符的javascript程序
         var s=”abacabefgeeii”;
         var s1=s.replace(/(.).*1/g,”$1″);
         var re=new RegExp(“[“+s1+”]“,”g”);
         var s2=s.replace(re,””);
         alert(s1+s2);                     //结果为:abcefgi
     /*动用后向援引收取包含重复的字符,再以重复的字符创设第二个表明式,取到不重复的字符,
       两个串连。那些点子对于字符顺序有必要的字符串大概不适用。*/
     29.用正则表达式从URubiconL地址中领取文件名的javascript程序
         s=”http://www.1234.net/page0.htm“;
         s=s.replace(/(.*/){0,}([^.]+).*/ig,”$2″);
         alert(s);                             //结果为page0
     30.节制表单文本框输入内容
         只好输入中文:
             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(/[W]/g,”)”
                 onbeforepaste=”clipboardData.setData(‘text’,
                 clipboardData.getData(‘text’).replace(/[^d]/g,”))”
     31.验证文件名由字母,数字,下滑线组成                 /^((w+)(.{1})(w+))$/
     32.相配日期(1901-壹玖玖陆卡塔尔国
         /^19d{2}-((0[1-9])|(1[0-2]))-((0[1-9])|([1-2][0-9])|(3([0|1])))$/
     33.相配日期(二〇〇二-2999卡塔尔
         /^20d{2}-((0[1-9])|(1[0-2]))-((0[1-9])|([1-2][0-9])|(3([0|1])))$/
     34.相配日期时间
         /^(1|2d{3}-((0[1-9])|(1[0-2]))-((0[1-9])|([1-2][0-9])|(3([0|1]))))( (d{2}):(d{2}):(d{2}))?$/

发表评论

电子邮件地址不会被公开。 必填项已用*标注