目次
正则表达式实例,正则表达式
ホームページ バックエンド開発 PHPチュートリアル 正则表达式实例,正则表达式_PHP教程

正则表达式实例,正则表达式_PHP教程

Jul 13, 2016 am 09:51 AM
個人の マッチ 番号 通常 表現 入力 確認する

正则表达式实例,正则表达式

<span>1.验证数字:
只能输入1个数字

 
表达式 ^\d$ 
描述 匹配一个数字 
匹配的例子 0,1,2,3 
不匹配的例子 

2.只能输入n个数字 
表达式 ^\d{n}$    例如^\d{8}$ 
描述 匹配8个数字 
匹配的例子 12345678,22223334,12344321 
不匹配的例子 


3.只能输入至少n个数字 
表达式 ^\d{n,}$ 例如^\d{8,}$ 
描述 匹配最少n个数字 
匹配的例子 12345678,123456789,12344321 
不匹配的例子 


4.只能输入m到n个数字 
表达式 ^\d{m,n}$ 例如^\d{7,8}$ 
描述 匹配m到n个数字 
匹配的例子 12345678,1234567 
不匹配的例子 123456,123456789


5.只能输入数字 
表达式 ^[0-9]*$ 
描述 匹配任意个数字 
匹配的例子 12345678,1234567 
不匹配的例子 E,清清月儿,http://blog.csdn.net/21aspnet


6.只能输入某个区间数字 
表达式 ^[12-15]$ 
描述 匹配某个区间的数字 
匹配的例子 12,13,14,15 
不匹配的例子 


7.只能输入0和非0打头的数字 
表达式 ^(0|[1-9][0-9]*)$ 
描述 可以为0,第一个数字不能为0,数字中可以有0 
匹配的例子 12,10,101,100 
不匹配的例子 01,清清月儿,http://blog.csdn.net/21aspnet


8.只能输入实数 
表达式 ^[-+]?\d+(\.\d+)?$ 
描述 匹配实数 
匹配的例子 18,+3.14,-9.90 
不匹配的例子 .6,33s,67-99


9.只能输入n位小数的正实数 
表达式 ^[0-9]+(.[0-9]{n})?$以^[0-9]+(.[0-9]{2})?$为例 
描述 匹配n位小数的正实数 
匹配的例子 2.22 
不匹配的例子 2.222,-2.22,http://blog.csdn.net/21aspnet


10.只能输入m-n位小数的正实数 
表达式 ^[0-9]+(.[0-9]{m,n})?$以^[0-9]+(.[0-9]{1,2})?$为例 
描述 匹配m到n位小数的正实数 
匹配的例子 2.22,2.2 
不匹配的例子 2.222,-2.2222,http://blog.csdn.net/21aspnet


11.只能输入非0的正整数 
表达式 ^\+?[1-9][0-9]*$ 
描述 匹配非0的正整数 
匹配的例子 2,23,234 
不匹配的例子 0,-4,


12.只能输入非0的负整数 
表达式 ^\-[1-9][0-9]*$ 
描述 匹配非0的负整数 
匹配的例子 -2,-23,-234 
不匹配的例子 0,4,


13.只能输入n个字符 
表达式 ^.{n}$ 以^.{4}$为例 
描述 匹配n个字符,注意汉字只算1个字符 
匹配的例子 1234,12we,123清,清清月儿 
不匹配的例子 0,123,123www,http://blog.csdn.net/21aspnet/


14.只能输入英文字符 
表达式 ^.[A-Za-z]+$为例 
描述 匹配英文字符,大小写任意 
匹配的例子 Asp,WWW, 
不匹配的例子 0,123,123www,http://blog.csdn.net/21aspnet/


15.只能输入大写英文字符 
表达式 ^.[A-Z]+$为例 
描述 匹配英文大写字符 
匹配的例子 NET,WWW, 
不匹配的例子 0,123,123www,


16.只能输入小写英文字符 
表达式 ^.[a-z]+$为例 
描述 匹配英文大写字符 
匹配的例子 asp,csdn 
不匹配的例子 0,NET,WWW,


17.只能输入英文字符+数字 
表达式 ^.[A-Za-z0-9]+$为例 
描述 匹配英文字符+数字 
匹配的例子 1Asp,W1W1W, 
不匹配的例子 0,123,123,www,http://blog.csdn.net/21aspnet/


18.只能输入英文字符/数字/下划线 
表达式 ^\w+$为例 
描述 匹配英文字符或数字或下划线 
匹配的例子 1Asp,WWW,12,1_w 
不匹配的例子 3#,2-4,w#$,http://blog.csdn.net/21aspnet/


19.密码举例 
表达式 ^.[a-zA-Z]\w{m,n}$ 
描述 匹配英文字符开头的m-n位字符且只能数字字母或下划线 
匹配的例子  
不匹配的例子 


20.验证首字母大写 
表达式 \b[^\Wa-z0-9_][^\WA-Z0-9_]*\b 
描述 首字母只能大写 
匹配的例子 Asp,Net 
不匹配的例子 http://blog.csdn.net/21aspnet/


21.验证网址(带?id=中文)VS.NET2005无此功能 
表达式 ^http:\/\/([\w-]+(\.[\w-]+)+(\/[\w-     .\/\?%&=\u4e00-\u9fa5]*)?)?$
 
描述 验证带?id=中文 
匹配的例子 http://blog.csdn.net/21aspnet/,
http://blog.csdn.net?id=清清月儿 
不匹配的例子 


22.验证汉字 
表达式 ^[\u4e00-\u9fa5]{0,}$ 
描述 只能汉字 
匹配的例子 清清月儿 
不匹配的例子 http://blog.csdn.net/21aspnet/


23.验证QQ号 
表达式 [0-9]{5,9} 
描述 5-9位的QQ号 
匹配的例子 10000,123456 
不匹配的例子 10000w,http://blog.csdn.net/21aspnet/


24.验证电子邮件(验证MSN号一样) 
表达式 \w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 
描述 注意MSN用非hotmail.com邮箱也可以 
匹配的例子 aaa@msn.com 
不匹配的例子 111@1.     http://blog.csdn.net/21aspnet/


25.验证身份证号(粗验,最好服务器端调类库再细验证) 
表达式 ^[1-9]([0-9]{16}|[0-9]{13})[xX0-9]$ 
描述  
匹配的例子 15或者18位的身份证号,支持带X的 
不匹配的例子 http://blog.csdn.net/21aspnet/


26.验证手机号(包含159,不包含小灵通) 
表达式 ^13[0-9]{1}[0-9]{8}|^15[9]{1}[0-9]{8} 
描述 包含159的手机号130-139 
匹配的例子 139XXXXXXXX 
不匹配的例子 140XXXXXXXX,http://blog.csdn.net/21aspnet/


27.验证电话号码号(很复杂,VS.NET2005给的是错的) 
表达式(不完美) 方案一    ((\(\d{3}\)|\d{3}-)|(\(\d{4}\)|\d{4}-))?(\d{8}|\d{7})
方案二 (^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)    支持手机号但也不完美 
描述 上海:02112345678      3+8位
上海:021-12345678
上海:(021)-12345678
上海:(021)12345678
郑州:03711234567       4+7位
杭州:057112345678       4+8位
还有带上分机号,国家码的情况
由于情况非常复杂所以不建议前台做100%验证,到目前为止似乎也没有谁能写一个包含所有的类型,其实有很多情况本身就是矛盾的。
如果谁有更好的验证电话的请留言
 
匹配的例子  
不匹配的例子 


28.验证护照 
表达式 (P\d{7})|G\d{8})
 
描述 验证P+7个数字和G+8个数字 
匹配的例子  
不匹配的例子 清清月儿,http://blog.csdn.net/21aspnet/


29.验证IP 
表达式 ^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$
 
描述 验证IP 
匹配的例子 192.168.0.1      222.234.1.4 
不匹配的例子 


30.验证域 
表达式 ^[a-zA-Z0-9]+([a-zA-Z0-9\-\.]+)?\.s|)$
 
描述 验证域 
匹配的例子 csdn.net     baidu.com    it.com.cn 
不匹配的例子 192.168.0.1 


31.验证信用卡 
表达式 ^((?:4\d{3})|(?:5[1-5]\d{2})|(?:6011)|(?:3[68]\d{2})|(?:30[012345]\d))[ -]?(\d{4})[ -]?(\d{4})[ -]?(\d{4}|3[4,7]\d{13})$
 
描述 验证VISA卡,万事达卡,Discover卡,美国运通卡 
匹配的例子  
不匹配的例子 


32.验证ISBN国际标准书号 
表达式 ^(\d[- ]*){9}[\dxX]$
 
描述 验证ISBN国际标准书号 
匹配的例子 7-111-19947-2 
不匹配的例子 


33.验证GUID全球唯一标识符 
表达式 ^[A-Z0-9]{8}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{12}$
 
描述 格式8-4-4-4-12 
匹配的例子 2064d355-c0b9-41d8-9ef7-9d8b26524751 
不匹配的例子 


34.验证文件路径和扩展名 
表达式 ^([a-zA-Z]\:|\\)\\([^\\]+\\)*[^\/:*?"</span><span><></span><span>|]+\.txt(l)?$
 
描述 检查路径和文件扩展名 
匹配的例子 E:\mo.txt 
不匹配的例子 E:\ , mo.doc, E:\mo.doc ,http://blog.csdn.net/21aspnet/


35.验证Html颜色值 
表达式 ^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$
 
描述 检查颜色取值 
匹配的例子 #FF0000 
不匹配的例子 http://blog.csdn.net/21aspnet/

^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$

整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 
只能输入数字:"^[0-9]*$"。 
只能输入n位的数字:"^\d{n}$"。 
只能输入至少n位的数字:"^\d{n,}$"。 
只能输入m~n位的数字:。"^\d{m,n}$" 
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。 
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。 
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。 
只能输入非零的正整数:"^\+?[1-9][0-9]*$"。 
只能输入非零的负整数:"^\-[1-9][]0-9"*$。 
只能输入长度为3的字符:"^.{3}$"。 
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。 
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。 
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。 
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。 
只能输入由数字、26个英文字母或者下划线组成的字符串:"^\w+$"。 
验证用户密码:"^[a-zA-Z]\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。 
验证是否含有^%&',;=?$\"等字符:"[^%&',;=?$\x22]+"。 
只能输入汉字:"^[\u4e00-\u9fa5]{0,}$" 
验证Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。 
验证InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。 
验证电话号码:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。 
验证身份证号(15位或18位数字):"^\d{15}|\d{18}$"。 
验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。 
验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。 
匹配中文字符的正则表达式: [\u4e00-\u9fa5] 

匹配双字节字符(包括汉字在内):[^\x00-\xff] 

应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 
String.prototype.len=function(){return this.replace(/[^\x00-\xff]/g,"aa").length;} 

匹配空行的正则表达式:\n[\s| ]*\r 

匹配html标签的正则表达式:</span><span><</span><span>(.*)</span><span>></span>(.*)<span><</span><span>\/(.*)</span><span>></span>|<span><</span><span>(.*)\</span><span>/></span><span> 

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

应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现,如下: 

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

利用正则表达式分解和转换IP地址: 

下面是利用正则表达式匹配IP地址,并将IP地址转换成对应数值的Javascript程序: 

function IP2V(ip) 
{ 
re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //匹配IP地址的正则表达式 
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)) 

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

匹配网址URL的正则表达式:http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)? 


利用正则表达式限制网页表单里的文本框输入内容: 

用正则表达式限制只能输入中文: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,''))"

</span><span><</span><span>input </span><span>onkeyup</span><span>="value=value.replace(/[^\u4E00-\u9FA5\w]/g,'')"</span><span> onbeforepaste</span><span>="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5\w]/g,''))"</span><span> value</span><span>="允许下划线,数字字母和汉字"</span><span>></span>

<span><</span><span>script </span><span>language</span><span>="javascript"</span><span>></span> 
<span>if</span><span> (document.layers)</span><span>//</span><span>触发键盘事件 </span>
<span>document.captureEvents(Event.KEYPRESS) 

</span><span>function</span><span> xz(thsv,nob){ 
</span><span>if</span><span>(nob</span><span>==</span><span>"</span><span>2</span><span>"</span><span>){ 
window.clipboardData.setData(</span><span>"</span><span>text</span><span>"</span><span>,</span><span>""</span><span>) 
alert(</span><span>"</span><span>避免非法字符输入,请勿复制字符</span><span>"</span><span>); 
</span><span>return</span> <span>false</span><span>; 
} 
</span><span>if</span><span> (event.keyCode</span><span>!=</span><span>8</span> <span>&&</span><span> event.keyCode</span><span>!=</span><span>16</span> <span>&&</span><span> event.keyCode</span><span>!=</span><span>37</span> <span>&&</span><span> event.keyCode</span><span>!=</span><span>38</span> <span>&&</span><span> event.keyCode</span><span>!=</span><span>39</span> <span>&&</span><span> event.keyCode</span><span>!=</span><span>40</span><span>){ 
thsvv</span><span>=</span><span>thsv.value;</span><span>//</span><span>输入的值 </span>
<span>thsvs</span><span>=</span><span>thsvv.substring(thsvv.length</span><span>-</span><span>1</span><span>);</span><span>//</span><span>输入的最后一个字符 </span><span>
//</span><span>thsvss=thsvv.substring(0,thsvv.length-1);//去掉最后一个错误字符 </span>
<span>if</span><span> (</span><span>!</span><span>thsvs.replace(</span><span>/</span><span>[^\u4E00-\u9FA5\w]</span><span>/</span><span>g,</span><span>''</span><span>) </span><span>||</span><span> event.keyCode</span><span>==</span><span>189</span><span>){</span><span>//</span><span>正则除去符号和下划线 key </span>
<span>thsv.value</span><span>=</span><span>'</span><span>请勿输入非法符号 [</span><span>'</span><span>+</span><span>thsvs</span><span>+</span><span>'</span><span>]</span><span>'</span><span>; 
alert(</span><span>'</span><span>请勿输入非法符号 [</span><span>'</span><span>+</span><span>thsvs</span><span>+</span><span>'</span><span>]</span><span>'</span><span>); 
thsv.value</span><span>=</span><span>""</span><span>; 
</span><span>return</span> <span>false</span><span>; 
} 
} 
} 

</span><span></</span><span>script</span><span>></span> 

<span><</span><span>input </span><span>onkeyup</span><span>="xz(this,1)"</span><span> onPaste</span><span>="xz(this,2)"</span><span> value</span><span>=""</span><span>></span><span>允许数字字母和汉字

</span><span><</span><span>script </span><span>language</span><span>="javascript"</span><span>></span> 
<span><!--</span> 
<span>function</span><span> MaxLength(field,maxlimit){ 
</span><span>var</span><span> j </span><span>=</span><span> field.value.replace(</span><span>/</span><span>[^\x00-\xff]</span><span>/</span><span>g,</span><span>"</span><span>**</span><span>"</span><span>).length; 
</span><span>//</span><span>alert(j); </span>
<span>var</span><span> tempString</span><span>=</span><span>field.value; 
</span><span>var</span><span> tt</span><span>=</span><span>""</span><span>; 
</span><span>if</span><span>(j </span><span>></span><span> maxlimit){ 
</span><span>for</span><span>(</span><span>var</span><span> i</span><span>=</span><span>0</span><span>;i</span><span><</span><span>maxlimit;i</span><span>++</span><span>){ 
</span><span>if</span><span>(tt.replace(</span><span>/</span><span>[^\x00-\xff]</span><span>/</span><span>g,</span><span>"</span><span>**</span><span>"</span><span>).length </span><span><</span><span> maxlimit) 
tt </span><span>=</span><span> tempString.substr(</span><span>0</span><span>,i</span><span>+</span><span>1</span><span>); 
</span><span>else</span> 
<span>break</span><span>; 
} 
</span><span>if</span><span>(tt.replace(</span><span>/</span><span>[^\x00-\xff]</span><span>/</span><span>g,</span><span>"</span><span>**</span><span>"</span><span>).length </span><span>></span><span> maxlimit) 
tt</span><span>=</span><span>tt.substr(</span><span>0</span><span>,tt.length</span><span>-</span><span>1</span><span>); 
field.value </span><span>=</span><span> tt; 
}</span><span>else</span><span>{ 
; 
} 
} 
</span><span></</span><span>script</span><span>></span><span>

单行文本框控制</span><span><</span><span>br </span><span>/></span> 
<span><</span><span>INPUT </span><span>type</span><span>="text"</span><span> id</span><span>="Text1"</span><span> name</span><span>="Text1"</span><span> onpropertychange</span><span>="MaxLength(this, 5)"</span><span>><</span><span>br </span><span>/></span><span> 
多行文本框控制:</span><span><</span><span>br </span><span>/></span> 
<span><</span><span>TEXTAREA </span><span>rows</span><span>="14"</span><span> 
cols</span><span>="39"</span><span> id</span><span>="Textarea1"</span><span> name</span><span>="Textarea1"</span><span> onpropertychange</span><span>="MaxLength(this, 15)"</span><span>></</span><span>TEXTAREA</span><span>><</span><span>br </span><span>/></span><span>

控制表单内容只能输入数字,中文.... 
</span><span><</span><span>script</span><span>></span> 
<span>function</span><span> test()   
{ 
</span><span>if</span><span>(document.a.b.value.length</span><span>></span><span>50</span><span>) 
{ 
alert(</span><span>"</span><span>不能超过50个字符!</span><span>"</span><span>); 
document.a.b.focus(); 
</span><span>return</span> <span>false</span><span>; 
} 
} 
</span><span></</span><span>script</span><span>></span> 
<span><</span><span>form </span><span>name</span><span>=a </span><span>onsubmit</span><span>="return test()"</span><span>></span> 
<span><</span><span>textarea </span><span>name</span><span>="b"</span><span> cols</span><span>="40"</span><span> wrap</span><span>="VIRTUAL"</span><span> rows</span><span>="6"</span><span>></</span><span>textarea</span><span>></span> 
<span><</span><span>input </span><span>type</span><span>="submit"</span><span> name</span><span>="Submit"</span><span> value</span><span>="check"</span><span>></span> 
<span></</span><span>form</span><span>></span><span> 

只能是汉字 
</span><span><</span><span>input </span><span>onkeyup</span><span>="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"</span><span>></span><span> 

只能是英文字符 
</span><span><</span><span>script </span><span>language</span><span>=javascript</span><span>></span> 
<span>function</span><span> onlyEng() 
{ 
</span><span>if</span><span>(</span><span>!</span><span>(event.keyCode</span><span>>=</span><span>65</span><span>&&</span><span>event.keyCode</span><span><=</span><span>90</span><span>)) 
    event.returnValue</span><span>=</span><span>false</span><span>; 
} 
</span><span></</span><span>script</span><span>></span> 

<span><</span><span>input </span><span>onkeydown</span><span>="onlyEng();"</span><span>></span> 
<span><</span><span>input </span><span>name</span><span>="coname"</span><span> type</span><span>="text"</span><span> size</span><span>="50"</span><span> maxlength</span><span>="35"</span><span> class</span><span>=input2 </span><span>onkeyup</span><span>="value=value.replace(/[\W]/g,'') "</span><span>onbeforepaste</span><span>="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"</span><span>></span><span> 
只能是数字 
</span><span><</span><span>script </span><span>language</span><span>=javascript</span><span>></span> 
<span>function</span><span> onlyNum() 
{ 
</span><span>if</span><span>(</span><span>!</span><span>((event.keyCode</span><span>>=</span><span>48</span><span>&&</span><span>event.keyCode</span><span><=</span><span>57</span><span>)</span><span>||</span><span>(event.keyCode</span><span>>=</span><span>96</span><span>&&</span><span>event.keyCode</span><span><=</span><span>105</span><span>))) 
</span><span>//</span><span>考虑小键盘上的数字键 </span>
<span>    event.returnValue</span><span>=</span><span>false</span><span>; 
} 
</span><span></</span><span>script</span><span>></span> 

<span><</span><span>input </span><span>onkeydown</span><span>="onlyNum();"</span><span>></span><span> 

只能是英文字符和数字 
</span><span><</span><span>input </span><span>onkeyup</span><span>="value=value.replace(/[\W]/g,'') "</span><span>onbeforepaste</span><span>="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"</span><span>></span><span> 

验证为email格式 
</span><span><</span><span>SCRIPT </span><span>LANGUAGE</span><span>=Javascript </span><span>RUNAT</span><span>=Server</span><span>></span> 
<span>function</span><span> isEmail(strEmail) { 
</span><span>if</span><span> (strEmail.search(</span><span>/</span><span>^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$</span><span>/</span><span>) </span><span>!=</span> <span>-</span><span>1</span><span>) 
</span><span>return</span> <span>true</span><span>; 
</span><span>else</span><span> 
alert(</span><span>"</span><span>oh</span><span>"</span><span>); 
} 
</span><span></</span><span>SCRIPT</span><span>></span> 
<span><</span><span>input </span><span>type</span><span>=text </span><span>onblur</span><span>=isEmail(this.value)</span><span>></span><span> 

屏蔽关键字(sex , fuck) - 已修改 
</span><span><</span><span>script </span><span>language</span><span>="JavaScript1.2"</span><span>></span> 
<span>function</span><span> test() { 
</span><span>if</span><span>((a.b.value.indexOf (</span><span>"</span><span>sex</span><span>"</span><span>) </span><span>==</span> <span>0</span><span>)</span><span>||</span><span>(a.b.value.indexOf (</span><span>"</span><span>fuck</span><span>"</span><span>) </span><span>==</span> <span>0</span><span>)){ 
    alert(</span><span>"</span><span>五讲四美三热爱</span><span>"</span><span>); 
    a.b.focus(); 
    </span><span>return</span> <span>false</span><span>;} 
} 
</span><span></</span><span>script</span><span>></span> 
<span><</span><span>form </span><span>name</span><span>=a </span><span>onsubmit</span><span>="return test()"</span><span>></span> 
<span><</span><span>input </span><span>type</span><span>=text </span><span>name</span><span>=b</span><span>></span> 
<span><</span><span>input </span><span>type</span><span>="submit"</span><span> name</span><span>="Submit"</span><span> value</span><span>="check"</span><span>></span> 
<span></</span><span>form</span><span>></span><span> 


限制文本框里只能输入数字 
</span><span><</span><span>input </span><span>onkeyup</span><span>="if(event.keyCode !=37 && event.keyCode != 39) value=value.replace(/\D/g,'');"</span><span>onbeforepaste</span><span>="clipboardData.setData('text',clipboardData.getData('text').replace(/\D/g,''))"</span><span>></span><span>  

 手机号码:(^(\d{3,4}-)?\d{7,8})$|(13[0-9]{9})|(15[8-9]{9})

不会的也可以根据上面介绍的写出来了吧,只是得花点时间了。

 

验证数字的正则表达式集 
验证数字:^[0-9]*$
验证n位的数字:^\d{n}$
验证至少n位数字:^\d{n,}$
验证m-n位的数字:^\d{m,n}$
验证零和非零开头的数字:^(0|[1-9][0-9]*)$
验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
验证非零的正整数:^\+?[1-9][0-9]*$
验证非零的负整数:^\-[1-9][0-9]*$
验证非负整数(正整数 + 0)  ^\d+$
验证非正整数(负整数 + 0)  ^((-\d+)|(0+))$
验证长度为3的字符:^.{3}$
验证由26个英文字母组成的字符串:^[A-Za-z]+$
验证由26个大写英文字母组成的字符串:^[A-Z]+$
验证由26个小写英文字母组成的字符串:^[a-z]+$
验证由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
验证由数字、26个英文字母或者下划线组成的字符串:^\w+$
验证用户密码:^[a-zA-Z]\w{5,17}$ 正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线。
验证是否含有 ^%&',;=?$\" 等字符:[^%&',;=?$\x22]+
验证汉字:^[\u4e00-\u9fa5],{0,}$
验证Email地址:^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
验证InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
验证电话号码:^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$:--正确格式为:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。
验证身份证号(15位或18位数字):^\d{15}|\d{}18$
验证一年的12个月:^(0?[1-9]|1[0-2])$ 正确格式为:&ldquo;01&rdquo;-&ldquo;09&rdquo;和&ldquo;1&rdquo;&ldquo;12&rdquo;
验证一个月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$    正确格式为:01、09和1、31。
整数:^-?\d+$
非负浮点数(正浮点数 + 0):^\d+(\.\d+)?$
正浮点数   ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正浮点数(负浮点数 + 0) ^((-\d+(\.\d+)?)|(0+(\.0+)?))$
负浮点数  ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
浮点数  ^(-?\d+)(\.\d+)?</span>
ログイン後にコピー

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1014832.htmlTechArticle正则表达式实例,正则表达式 1.验证数字:只能输入1个数字 表达式 ^\d$ 描述 匹配一个数字 匹配的例子 0,1,2,3 不匹配的例子 2.只能输入n个...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Windows 入力でハングまたはメモリ使用量の増加が発生する [修正] Windows 入力でハングまたはメモリ使用量の増加が発生する [修正] Feb 19, 2024 pm 10:48 PM

Windows 入力エクスペリエンスは、さまざまなヒューマン インターフェイス デバイスからのユーザー入力を処理する重要なシステム サービスです。システム起動時に自動的に起動し、バックグラウンドで実行されます。ただし、場合によっては、このサービスが自動的にハングしたり、メモリを過剰に占有したりして、システムのパフォーマンスが低下することがあります。したがって、システムの効率と安定性を確保するには、このプロセスをタイムリーに監視および管理することが重要です。この記事では、Windows の入力エクスペリエンスがハングしたり、メモリ使用量が高くなる問題を修正する方法を紹介します。 Windows 入力エクスペリエンス サービスにはユーザー インターフェイスがありませんが、基本的なシステム タスクと入力デバイスに関連する機能の処理に密接に関連しています。その役割は、Windows システムがユーザーによって入力されたすべての入力を理解できるようにすることです。

PDFの署名を検証する方法 PDFの署名を検証する方法 Feb 18, 2024 pm 05:33 PM

私たちは通常、政府やその他の機関から PDF ファイルを受け取りますが、中にはデジタル署名が付いているものもあります。署名を検証すると、SignatureValid メッセージと緑色のチェック マークが表示されます。署名が検証されない場合、有効性は不明です。署名の検証は重要です。PDF で署名を検証する方法を見てみましょう。 PDF 形式の署名を検証する方法 PDF 形式で署名を検証すると、署名の信頼性が高まり、文書が受け入れられる可能性が高くなります。次の方法で PDF ドキュメントの署名を検証できます。 Adobe Reader で PDF を開きます。 署名を右クリックし、「署名プロパティの表示」を選択します。 「署名者証明書の表示」ボタンをクリックします。 「信頼」タブから信頼できる証明書リストに署名を追加します。 「署名の検証」をクリックして検証を完了します。

WeChatの友人による認証を使用してブロックを解除する詳細な方法 WeChatの友人による認証を使用してブロックを解除する詳細な方法 Mar 25, 2024 pm 01:26 PM

1. WeChatを開いた後、検索アイコンをクリックし、WeChatチームと入力し、下のサービスをクリックして入力します。 2. 入力後、左下隅にあるセルフサービス ツール オプションをクリックします。 3. をクリックした後、上のオプションで、補助検証のブロック解除/再審査請求のオプションをクリックします。

PHP 8 の新機能: 検証と署名の追加 PHP 8 の新機能: 検証と署名の追加 Mar 27, 2024 am 08:21 AM

PHP8 は PHP の最新バージョンであり、プログラマーにさらなる利便性と機能をもたらします。このバージョンはセキュリティとパフォーマンスに特に重点を置いており、注目すべき新機能の 1 つは検証および署名機能の追加です。この記事では、これらの新機能とその使用法について詳しく説明します。検証と署名は、コンピューター サイエンスにおける非常に重要なセキュリティ概念です。これらは、送信されるデータが完全で本物であることを確認するためによく使用されます。オンライン取引や機密情報を扱う場合、検証と署名がさらに重要になります。誰かがデータを改ざんできると、潜在的にデータが改ざんされる可能性があるためです。

PHP 正規表現: 厳密な一致とあいまいな包含の除外 PHP 正規表現: 厳密な一致とあいまいな包含の除外 Feb 28, 2024 pm 01:03 PM

PHP 正規表現: 完全一致と除外 ファジー包含正規表現は、プログラマがテキストを処理する際に効率的な検索、置換、フィルタリングを実行できる強力なテキスト マッチング ツールです。 PHP では、正規表現は文字列処理やデータ マッチングにも広く使用されています。この記事では、PHP で完全一致を実行し、あいまい包含操作を除外する方法に焦点を当て、具体的なコード例を使用して説明します。完全一致 完全一致とは、バリエーションや余分な単語ではなく、正確な条件を満たす文字列のみと一致することを意味します。

Golang 正規表現を使用して複数の単語または文字列を照合するにはどうすればよいですか? Golang 正規表現を使用して複数の単語または文字列を照合するにはどうすればよいですか? May 31, 2024 am 10:32 AM

Golang の正規表現では、パイプ文字 | を使用して複数の単語または文字列を一致させ、各オプションを論理 OR 式として区切ります。例: 「fox」または「dog」に一致します: fox|dog は「quick」、「brown」または「lazy」に一致します: (quick|brown|lazy) 「Go」、「Python」または「Java」に一致します: Go| Python |Java は単語または 4 桁の郵便番号と一致します: ([a-zA

Steam ログインがモバイル トークンの検証で停止する問題を解決するにはどうすればよいですか? Steam ログインがモバイル トークンの検証で停止する問題を解決するにはどうすればよいですか? Mar 14, 2024 pm 07:35 PM

Steam はゲーム愛好家が使用するプラットフォームです。ここでは多くのゲームを購入できます。しかし、最近多くのユーザーが Steam にログインするときにモバイル トークン検証インターフェイスでスタックし、正常にログインできません。この問題に直面しているほとんどのユーザーは、この状況を解決する方法を知っていても構いません。今日のソフトウェア チュートリアルは、ユーザーの質問に答えるためにここにあります。困っている友達が操作方法を確認することができます。 Steamモバイルトークンエラー?解決策 1: ソフトウェアの問題の場合は、まず携帯電話で Steam ソフトウェア設定を見つけ、サポート ページをリクエストし、デバイスを使用しているネットワークが正常に実行されていることを確認し、もう一度 [OK] をクリックして、[SMS の送信] をクリックすると、確認コードを受け取ることができます。リクエストを処理するときに確認し、解決します。

PHP 文字列マッチングのヒント: あいまいな組み込み式を避ける PHP 文字列マッチングのヒント: あいまいな組み込み式を避ける Feb 29, 2024 am 08:06 AM

PHP 文字列マッチングのヒント: あいまいな組み込み式を避ける PHP 開発では、文字列マッチングは一般的なタスクであり、通常は特定のテキスト コンテンツを検索したり、入力形式を検証したりするために使用されます。ただし、一致の精度を確保するために、曖昧な包含式の使用を避ける必要がある場合があります。この記事では、PHP で文字列マッチングを行うときにあいまいな包含式を回避するためのテクニックをいくつか紹介し、具体的なコード例を示します。完全一致には preg_match() 関数を使用します。 PHP では、preg_mat を使用できます。

See all articles