正则表达式---常用的正则

来源:互联网 发布:知乎lolita 卓亚君 编辑:程序博客网 时间:2024/03/28 16:31

匹配中文字符的正则表达式: [/u4e00-/u9fa5]

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

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

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

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

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

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

匹配网址URL的正则表达式:(((ht|f)tp(s?):////)|(www/.[^ /[/]/(/)/n/r/t]+)|(([012]?[0-9]{1,2}/.){3}[012]?[0-9]{1,2})//)([^ /[/]/(/),;"'<>/n/r/t]+)([^/. /[/]/(/),;"'<>/n/r/t])|(([012]?[0-9]{1,2}/.){3}[012]?[0-9]{1,2})

匹配非负整数(正整数 + 0): ^/d+$  
匹配正整数: ^[0-9]*[1-9][0-9]*$  
匹配非正整数(负整数 + 0): ^((-/d+)|(0+))$  
匹配负整数: ^-[0-9]*[1-9][0-9]*$  
匹配整数: ^-?/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+)?$  
匹配由26个英文字母组成的字符串: ^[A-Za-z]+$  
匹配由26个英文字母的大写组成的字符串 : ^[A-Z]+$  
匹配由26个英文字母的小写组成的字符串: ^[a-z]+$  
匹配由数字和26个英文字母组成的字符串: ^[A-Za-z0-9]+$  
匹配由数字、26个英文字母或者下划线组成的字符串: ^/w+$  
匹配url : ^[a-zA-z]+://匹配(/w+(-/w+)*)(/.(/w+(-/w+)*))*(/?/S*)?$  

英语域名的正则表达式:^[a-zA-Z0-9/-]+/.(com|net|org|co.uk|org.uk|ltd.uk|plc.uk|me.uk|edu|mil|br.com|cn.com|eu.com|hu.com|no.com|qc.com|sa.com|se.com|se.net|us.com|uy.com|za.com|ac|co.ac|gv.ac|or.ac|ac.ac|af|am|as|at|ac.at|co.at|gv.at|or.at|asn.au|com.au|edu.au|org.au|net.au|be|ac.be|br|adm.br|adv.br|am.br|arq.br|art.br|bio.br|cng.br|cnt.br|com.br|ecn.br|eng.br|esp.br|etc.br|eti.br|fm.br|fot.br|fst.br|g12.br|gov.br|ind.br|inf.br|jor.br|lel.br|med.br|mil.br|net.br|nom.br|ntr.br|odo.br|org.br|ppg.br|pro.br|psc.br|psi.br|rec.br|slg.br|tmp.br|tur.br|tv.br|vet.br|zlg.br|ca|ab.ca|bc.ca|mb.ca|nb.ca|nf.ca|ns.ca|nt.ca|on.ca|pe.ca|qc.ca|sk.ca|yk.ca|cc|ac.cn|com.cn|edu.cn|gov.cn|net.cn|org.cn|cn|bj.cn|sh.cn|tj.cn|cq.cn|he.cn|nm.cn|ln.cn|jl.cn|hl.cn|js.cn|zj.cn|ah.cn|hb.cn|hn.cn|gd.cn|gx.cn|hi.cn|sc.cn|gz.cn|yn.cn|xz.cn|sn.cn|gs.cn|qh.cn|nx.cn|xj.cn|tw.cn|hk.cn|mo.cn|cx|cz|de|dk|fo|com.ec|org.ec|net.ec|mil.ec|fin.ec|med.ec|gov.ec|fr|tm.fr|com.fr|asso.fr|presse.fr|gf|gs|co.il|org.il|net.il|ac.il|k12.il|gov.il|muni.il|ac.in|co.in|ernet.in|gov.in|net.in|res.in|is|it|ac.jp|co.jp|go.jp|or.jp|ne.jp|ac.kr|co.kr|go.kr|ne.kr|nm.kr|or.kr|re.kr|li|lt|lu|asso.mc|tm.mc|com.mm|org.mm|net.mm|edu.mm|gov.mm|ms|mx|com.mx|org.mx|net.mx|edu.mx|gov.mx|gob.mx|nl|no|nu|pl|com.pl|net.pl|org.pl|aid.pl|agro.pl|atm.pl|auto.pl|biz.pl|edu.pl|gmina.pl|gsm.pl|info.pl|mail.pl|miasta.pl|media.pl|mil.pl|nom.pl|pc.pl|priv.pl|realestate.pl|rel.pl|shop.pl|sklep.pl|sos.pl|targi.pl|tm.pl|tourism.pl|travel.pl|turystyka.pl|pt|com.ro|org.ro|store.ro|tm.ro|firm.ro|www.ro|arts.ro|rec.ro|info.ro|nom.ro|nt.ro|ru|com.ru|net.ru|org.ru|se|si|com.sg|org.sg|net.sg|gov.sg|sk|st|tc|tf|ac.th|co.th|go.th|mi.th|net.th|or.th|tj|tm|to|bbs.tr|com.tr|edu.tr|gov.tr|k12.tr|mil.tr|net.tr|org.tr|com.tw|org.tw|net.tw|ac.uk|uk.co|uk.com|uk.net|gb.com|gb.net|vg|ac.za|alt.za|co.za|edu.za|gov.za|mil.za|net.za|ngo.za|nom.za|org.za|school.za|tm.za|web.za|sh|kz|ch|info|ua|biz|ws|gov|tv|name|pro|ie|com.hk|org.hk|net.hk|edu.hk|us|tk|cd|aero|gr|by|ad|lv|eu.lv|bz|es|jp|cl|ag|uni.cc|COM|NET|ORG|CO.UK|ORG.UK|LTD.UK|PLC.UK|ME.UK|EDU|MIL|BR.COM|CN.COM|EU.COM|HU.COM|NO.COM|QC.COM|SA.COM|SE.COM|SE.NET|US.COM|UY.COM|ZA.COM|AC|CO.AC|GV.AC|OR.AC|AC.AC|AF|AM|AS|AT|AC.AT|CO.AT|GV.AT|OR.AT|ASN.AU|COM.AU|EDU.AU|ORG.AU|NET.AU|BE|AC.BE|BR|ADM.BR|ADV.BR|AM.BR|ARQ.BR|ART.BR|BIO.BR|CNG.BR|CNT.BR|COM.BR|ECN.BR|ENG.BR|ESP.BR|ETC.BR|ETI.BR|FM.BR|FOT.BR|FST.BR|G12.BR|GOV.BR|IND.BR|INF.BR|JOR.BR|LEL.BR|MED.BR|MIL.BR|NET.BR|NOM.BR|NTR.BR|ODO.BR|ORG.BR|PPG.BR|PRO.BR|PSC.BR|PSI.BR|REC.BR|SLG.BR|TMP.BR|TUR.BR|TV.BR|VET.BR|ZLG.BR|CA|AB.CA|BC.CA|MB.CA|NB.CA|NF.CA|NS.CA|NT.CA|ON.CA|PE.CA|QC.CA|SK.CA|YK.CA|CC|AC.CN|COM.CN|EDU.CN|GOV.CN|NET.CN|ORG.CN|CN|BJ.CN|SH.CN|TJ.CN|CQ.CN|HE.CN|NM.CN|LN.CN|JL.CN|HL.CN|JS.CN|ZJ.CN|AH.CN|HB.CN|HN.CN|GD.CN|GX.CN|HI.CN|SC.CN|GZ.CN|YN.CN|XZ.CN|SN.CN|GS.CN|QH.CN|NX.CN|XJ.CN|TW.CN|HK.CN|MO.CN|CX|CZ|DE|DK|FO|COM.EC|ORG.EC|NET.EC|MIL.EC|FIN.EC|MED.EC|GOV.EC|FR|TM.FR|COM.FR|ASSO.FR|PRESSE.FR|GF|GS|CO.IL|ORG.IL|NET.IL|AC.IL|K12.IL|GOV.IL|MUNI.IL|AC.IN|CO.IN|ERNET.IN|GOV.IN|NET.IN|RES.IN|IS|IT|AC.JP|CO.JP|GO.JP|OR.JP|NE.JP|AC.KR|CO.KR|GO.KR|NE.KR|NM.KR|OR.KR|RE.KR|LI|LT|LU|ASSO.MC|TM.MC|COM.MM|ORG.MM|NET.MM|EDU.MM|GOV.MM|MS|MX|COM.MX|ORG.MX|NET.MX|EDU.MX|GOV.MX|GOB.MX|NL|NO|NU|PL|COM.PL|NET.PL|ORG.PL|AID.PL|AGRO.PL|ATM.PL|AUTO.PL|BIZ.PL|EDU.PL|GMINA.PL|GSM.PL|INFO.PL|MAIL.PL|MIASTA.PL|MEDIA.PL|MIL.PL|NOM.PL|PC.PL|PRIV.PL|REALESTATE.PL|REL.PL|SHOP.PL|SKLEP.PL|SOS.PL|TARGI.PL|TM.PL|TOURISM.PL|TRAVEL.PL|TURYSTYKA.PL|PT|COM.RO|ORG.RO|STORE.RO|TM.RO|FIRM.RO|WWW.RO|ARTS.RO|REC.RO|INFO.RO|NOM.RO|NT.RO|RU|COM.RU|NET.RU|ORG.RU|SE|SI|COM.SG|ORG.SG|NET.SG|GOV.SG|SK|ST|TC|TF|AC.TH|CO.TH|GO.TH|MI.TH|NET.TH|OR.TH|TJ|TM|TO|BBS.TR|COM.TR|EDU.TR|GOV.TR|K12.TR|MIL.TR|NET.TR|ORG.TR|COM.TW|ORG.TW|NET.TW|AC.UK|UK.CO|UK.COM|UK.NET|GB.COM|GB.NET|VG|AC.ZA|ALT.ZA|CO.ZA|EDU.ZA|GOV.ZA|MIL.ZA|NET.ZA|NGO.ZA|NOM.ZA|ORG.ZA|SCHOOL.ZA|TM.ZA|WEB.ZA|SH|KZ|CH|INFO|UA|BIZ|WS|GOV|TV|NAME|PRO|IE|COM.HK|ORG.HK|NET.HK|EDU.HK|US|TK|CD|AERO|GR|BY|AD|LV|EU.LV|BZ|ES|JP|CL|AG|UNI.CC)$

中文域名的正则表达式:^[/u4e00-/u9fa5]+/.(com|net|org|co.uk|org.uk|ltd.uk|plc.uk|me.uk|edu|mil|br.com|cn.com|eu.com|hu.com|no.com|qc.com|sa.com|se.com|se.net|us.com|uy.com|za.com|ac|co.ac|gv.ac|or.ac|ac.ac|af|am|as|at|ac.at|co.at|gv.at|or.at|asn.au|com.au|edu.au|org.au|net.au|be|ac.be|br|adm.br|adv.br|am.br|arq.br|art.br|bio.br|cng.br|cnt.br|com.br|ecn.br|eng.br|esp.br|etc.br|eti.br|fm.br|fot.br|fst.br|g12.br|gov.br|ind.br|inf.br|jor.br|lel.br|med.br|mil.br|net.br|nom.br|ntr.br|odo.br|org.br|ppg.br|pro.br|psc.br|psi.br|rec.br|slg.br|tmp.br|tur.br|tv.br|vet.br|zlg.br|ca|ab.ca|bc.ca|mb.ca|nb.ca|nf.ca|ns.ca|nt.ca|on.ca|pe.ca|qc.ca|sk.ca|yk.ca|cc|ac.cn|com.cn|edu.cn|gov.cn|net.cn|org.cn|cn|bj.cn|sh.cn|tj.cn|cq.cn|he.cn|nm.cn|ln.cn|jl.cn|hl.cn|js.cn|zj.cn|ah.cn|hb.cn|hn.cn|gd.cn|gx.cn|hi.cn|sc.cn|gz.cn|yn.cn|xz.cn|sn.cn|gs.cn|qh.cn|nx.cn|xj.cn|tw.cn|hk.cn|mo.cn|cx|cz|de|dk|fo|com.ec|org.ec|net.ec|mil.ec|fin.ec|med.ec|gov.ec|fr|tm.fr|com.fr|asso.fr|presse.fr|gf|gs|co.il|org.il|net.il|ac.il|k12.il|gov.il|muni.il|ac.in|co.in|ernet.in|gov.in|net.in|res.in|is|it|ac.jp|co.jp|go.jp|or.jp|ne.jp|ac.kr|co.kr|go.kr|ne.kr|nm.kr|or.kr|re.kr|li|lt|lu|asso.mc|tm.mc|com.mm|org.mm|net.mm|edu.mm|gov.mm|ms|mx|com.mx|org.mx|net.mx|edu.mx|gov.mx|gob.mx|nl|no|nu|pl|com.pl|net.pl|org.pl|aid.pl|agro.pl|atm.pl|auto.pl|biz.pl|edu.pl|gmina.pl|gsm.pl|info.pl|mail.pl|miasta.pl|media.pl|mil.pl|nom.pl|pc.pl|priv.pl|realestate.pl|rel.pl|shop.pl|sklep.pl|sos.pl|targi.pl|tm.pl|tourism.pl|travel.pl|turystyka.pl|pt|com.ro|org.ro|store.ro|tm.ro|firm.ro|www.ro|arts.ro|rec.ro|info.ro|nom.ro|nt.ro|ru|com.ru|net.ru|org.ru|se|si|com.sg|org.sg|net.sg|gov.sg|sk|st|tc|tf|ac.th|co.th|go.th|mi.th|net.th|or.th|tj|tm|to|bbs.tr|com.tr|edu.tr|gov.tr|k12.tr|mil.tr|net.tr|org.tr|com.tw|org.tw|net.tw|ac.uk|uk.co|uk.com|uk.net|gb.com|gb.net|vg|ac.za|alt.za|co.za|edu.za|gov.za|mil.za|net.za|ngo.za|nom.za|org.za|school.za|tm.za|web.za|sh|kz|ch|info|ua|biz|ws|gov|tv|name|pro|ie|com.hk|org.hk|net.hk|edu.hk|us|tk|cd|aero|gr|by|ad|lv|eu.lv|bz|es|jp|cl|ag|uni.cc|COM|NET|ORG|CO.UK|ORG.UK|LTD.UK|PLC.UK|ME.UK|EDU|MIL|BR.COM|CN.COM|EU.COM|HU.COM|NO.COM|QC.COM|SA.COM|SE.COM|SE.NET|US.COM|UY.COM|ZA.COM|AC|CO.AC|GV.AC|OR.AC|AC.AC|AF|AM|AS|AT|AC.AT|CO.AT|GV.AT|OR.AT|ASN.AU|COM.AU|EDU.AU|ORG.AU|NET.AU|BE|AC.BE|BR|ADM.BR|ADV.BR|AM.BR|ARQ.BR|ART.BR|BIO.BR|CNG.BR|CNT.BR|COM.BR|ECN.BR|ENG.BR|ESP.BR|ETC.BR|ETI.BR|FM.BR|FOT.BR|FST.BR|G12.BR|GOV.BR|IND.BR|INF.BR|JOR.BR|LEL.BR|MED.BR|MIL.BR|NET.BR|NOM.BR|NTR.BR|ODO.BR|ORG.BR|PPG.BR|PRO.BR|PSC.BR|PSI.BR|REC.BR|SLG.BR|TMP.BR|TUR.BR|TV.BR|VET.BR|ZLG.BR|CA|AB.CA|BC.CA|MB.CA|NB.CA|NF.CA|NS.CA|NT.CA|ON.CA|PE.CA|QC.CA|SK.CA|YK.CA|CC|AC.CN|COM.CN|EDU.CN|GOV.CN|NET.CN|ORG.CN|CN|BJ.CN|SH.CN|TJ.CN|CQ.CN|HE.CN|NM.CN|LN.CN|JL.CN|HL.CN|JS.CN|ZJ.CN|AH.CN|HB.CN|HN.CN|GD.CN|GX.CN|HI.CN|SC.CN|GZ.CN|YN.CN|XZ.CN|SN.CN|GS.CN|QH.CN|NX.CN|XJ.CN|TW.CN|HK.CN|MO.CN|CX|CZ|DE|DK|FO|COM.EC|ORG.EC|NET.EC|MIL.EC|FIN.EC|MED.EC|GOV.EC|FR|TM.FR|COM.FR|ASSO.FR|PRESSE.FR|GF|GS|CO.IL|ORG.IL|NET.IL|AC.IL|K12.IL|GOV.IL|MUNI.IL|AC.IN|CO.IN|ERNET.IN|GOV.IN|NET.IN|RES.IN|IS|IT|AC.JP|CO.JP|GO.JP|OR.JP|NE.JP|AC.KR|CO.KR|GO.KR|NE.KR|NM.KR|OR.KR|RE.KR|LI|LT|LU|ASSO.MC|TM.MC|COM.MM|ORG.MM|NET.MM|EDU.MM|GOV.MM|MS|MX|COM.MX|ORG.MX|NET.MX|EDU.MX|GOV.MX|GOB.MX|NL|NO|NU|PL|COM.PL|NET.PL|ORG.PL|AID.PL|AGRO.PL|ATM.PL|AUTO.PL|BIZ.PL|EDU.PL|GMINA.PL|GSM.PL|INFO.PL|MAIL.PL|MIASTA.PL|MEDIA.PL|MIL.PL|NOM.PL|PC.PL|PRIV.PL|REALESTATE.PL|REL.PL|SHOP.PL|SKLEP.PL|SOS.PL|TARGI.PL|TM.PL|TOURISM.PL|TRAVEL.PL|TURYSTYKA.PL|PT|COM.RO|ORG.RO|STORE.RO|TM.RO|FIRM.RO|WWW.RO|ARTS.RO|REC.RO|INFO.RO|NOM.RO|NT.RO|RU|COM.RU|NET.RU|ORG.RU|SE|SI|COM.SG|ORG.SG|NET.SG|GOV.SG|SK|ST|TC|TF|AC.TH|CO.TH|GO.TH|MI.TH|NET.TH|OR.TH|TJ|TM|TO|BBS.TR|COM.TR|EDU.TR|GOV.TR|K12.TR|MIL.TR|NET.TR|ORG.TR|COM.TW|ORG.TW|NET.TW|AC.UK|UK.CO|UK.COM|UK.NET|GB.COM|GB.NET|VG|AC.ZA|ALT.ZA|CO.ZA|EDU.ZA|GOV.ZA|MIL.ZA|NET.ZA|NGO.ZA|NOM.ZA|ORG.ZA|SCHOOL.ZA|TM.ZA|WEB.ZA|SH|KZ|CH|INFO|UA|BIZ|WS|GOV|TV|NAME|PRO|IE|COM.HK|ORG.HK|NET.HK|EDU.HK|US|TK|CD|AERO|GR|BY|AD|LV|EU.LV|BZ|ES|JP|CL|AG|UNI.CC)$

匹配日期的完美正则(一般用于判断单个的日期验证):
^(?:(?:1[6-9]|[2-9]/d)?/d{2}[///-/.](?:0?[1,3-9]|1[0-2])[///-/.](?:29|30))(?: (?:0?/d|1/d|2[0-3])/:(?:0?/d|[1-5]/d)/:(?:0?/d|[1-5]/d)(?: /d{1,3})?)?$|^(?:(?:1[6-9]|[2-9]/d)?/d{2}[///-/.](?:0?[1,3,5,7,8]|1[02])[///-/.]31)(?: (?:0?/d|1/d|2[0-3])/:(?:0?/d|[1-5]/d)/:(?:0?/d|[1-5]/d)(?: /d{1,3})?)?$|^(?:(?:1[6-9]|[2-9]/d)?(?:0[48]|[2468][048]|[13579][26])[///-/.]0?2[///-/.]29)(?: (?:0?/d|1/d|2[0-3])/:(?:0?/d|[1-5]/d)/:(?:0?/d|[1-5]/d)(?: /d{1,3})?)?$|^(?:(?:16|[2468][048]|[3579][26])00[///-/.]0?2[///-/.]29)(?: (?:0?/d|1/d|2[0-3])/:(?:0?/d|[1-5]/d)/:(?:0?/d|[1-5]/d)(?: /d{1,3})?)?$|^(?:(?:1[6-9]|[2-9]/d)?/d{2}[///-/.](?:0?[1-9]|1[0-2])[///-/.](?:0?[1-9]|1/d|2[0-8]))(?: (?:0?/d|1/d|2[0-3])/:(?:0?/d|[1-5]/d)/:(?:0?/d|[1-5]/d)(?: /d{1,3})?)?$


匹配日期验证:(一般用于在大量字符串中查询日期 格式:年[四位](任意字符)月[两位](任意字符)日[两位]   解决闰年的日期问题)
((((19|20)(([02468][048])|([13579][26]))/D{1}02/D?29))|((20[0-9][0-9])|(19[0-9][0-9]))/D{1}((((0[1-9])|(1[0-2]))/D{1}((0[1-9])|(1/d)|(2[0-8])))|((((0[13578])|(1[02]))/D{1}31)|(((01,3-9])|(1[0-2]))/D{1}(29|30)))))

匹配日期验证:(一般用于在大量字符串中查询日期 格式:年[四位](任意字符)月[一位-两位](任意字符)日[一位-两位]  )
(/d{4})/D{1}(0{0,1}[1-9]|1[0-2])/D{1}([12]/d|0{0,1}[1-9]|3[01])  如果要加上可选时间 接着后面加 (/D{1}([01]/d|2[0-3])/D{1}([0-5]/d)/D{1}([0-5]/d)?)?

匹配日期验证:(一般用于在大量字符串中查询日期 格式:月(任意字符)[一位或者多位]/日(任意字符)[一位或者多位]/年[四位]
([0]?/d|[1][0-2]).+([0-2]?/d|[3][0-1]).+([2][0-9]|[1][6-9])/d{2}
PS:这个用于查找 whois 这样BT的日期形式 比如baidu的 expires on..............: sat, oct 11, 2014  这样的日期先把oct转成数字以后用此正则可以找出来。

扩展一下:([0-2]?/d|[3][0-1]).+(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec|jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec).+([2][0-9]|[1][6-9])/d{2} 
                        这样适合   Record expires on 04-May-2011.
                                  Record created on 03-May-1996.
                                  Database last updated on 15-Aug-2006 04:09:00 EDT.


上述日期还需要加上时间 在后面加段  “空格 (20|21|22|23|[0-1]?/d):[0-5]?/d:[0-5]?/d ”即可。


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

用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/u4E00-/u9FA5]/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,''))"
 

文章来源:http://bigwave3.blog.163.com/blog/static/860892020069210174219/

原创粉丝点击