这里列出的正则表达式是来自国外的正则表示网站,其中,同种的正则表达式,按照使用频率的多寡的先后顺序排列,你可以根据需要选用。在选用后,你可以使用正则表达式在线测试工具在线进行测试调整:http://www.zhongguosou.com/computer_question_tools/test_regex.aspx
资源定位符
Windows文件名
表达式:
\A([A-Za-z0-9'~`!@#$%&^_+=\(\){},\-\[\]\;])+?([ A-Za-z0-9'~` !@#$%&^_+=\(\){},\-\[\];]|([.]))*?(?(3)(([ A-Za-z0-9'~`!@#$ %&^_+=\(\){},\-\[\]\;]*?)([A-Za-z0-9'~`!@#$%&^_+=\(\){},\-\[ \];])+\z)|(\z))
匹配:
Test.txt | T est.txt | Rosco's.Test.txt
不匹配:
\Folder\Test.txt | T*est.txt | Test.
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])-(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]))|((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]))),)*)(((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-
匹配:
192.168.101.1 | 192.168.101.1-192.168.101.255 | 192.168.101.1-192.168.101.255,192.168.102.12
不匹配:
999.168.101.1 | 192.168.101.1- | -192.168.101.255
网址:
表达式:
(((file|gopher|news|nntp|telnet|http|ftp|https|ftps|sftp)://)|(www\.))+(([a-zA-Z0-9\._-]+\.[a-zA-Z]{2,6})|([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}))(/[a-zA-Z0-9\&%_\./-~-]*)?
匹配:
http://diskusneforum.sk | www.diskusneforum.sk | ftp://123.123.123.123/
不匹配:
diskusneforum.sk
特别域名:
^(([a-z][0-9])|([0-9][a-z])|([a-z0-9][a-z0-9\-]{1,2}[a-z0-9])|([a-z0-9][a-z0-9\-](([a-z0-9\-][a-z0-9])|([a-z0-9][a-z0-9\-]))[a-z0-9\-]*[a-z0-9]))\.(co|me|org|ltd|plc|net|sch|ac|mod|nhs|police|gov)\.uk$
匹配:
zeropanic.co.uk | z2.co.uk | 1-1.org.uk
不匹配:
zeropanic.com | z.co.uk | zz.co.uk
文件夹名:
^[^\\\/\?\*\"\'\>\<\:\|]*$
匹配:
321321321 dasds
不匹配:
/\3fsdfsd
美元金额:
表达式:
^(\$)?(([1-9]\d{0,2}(\,\d{3})*)|([1-9]\d*)|(0))(\.\d{2})?$
匹配:
$1,234,567.89 | 1234567.89 | $0.00
不匹配:
$1,2345,67.89 | $1234,345,678.0
超级链接:
\[link="(?<link>((.|\n)*?))"\](?<text>((.|\n)*?))\[\/link\]
匹配:
[link="http://www.yahoo.com"]Yahoo[/link]
不匹配:
[link]http://www.yahoo.com[/link] | [link=http://www.yahoo.com]Yahoo[/link]
邮箱链接:
表达式:
((mailto\:|(news|(ht|f)tp(s?))\://){1}\S+)
匹配:
http://www.aspemporium.com | mailto:dominionx@hotmail.com | ftp://ftp.test.com
不匹配:
www.aspemporium.com | dominionx@hotmail.com | bloggs
长文件名校验(Windows标准)
表达式
^[^\\\./:\*\?\"<>\|]{1}[^\\/:\*\?\"<>\|]{0,254}$
匹配:
abcd.jpg | a b239.abcd ef12983 298 | a....23498
不匹配:
.abcde.jpg | abcde?.jpg | c:\abcde.jpg
匹配所有的顶级域名(根据IANA的2007-77-14的规范)
表达式:
(a(?:[cdefgilmnoqrstuwxz]|ero|(?:rp|si)a)|b(?:[abdefghijmnorstvwyz]iz)|c(?:[acdfghiklmnoruvxyz]|at|o(?:m|op))|d[ejkmoz]|e(?:[ceghrstu]|du)|f[ijkmor]|g(?:[abdefghilmnpqrstuwy]|ov)|h[kmnrtu]|i(?:[delmnoqrst]|n(?:fo|t))|j(?:[emop]|obs)|k[eghimnprwyz]|l[abcikrstuvy]|m(?:[acdeghklmnopqrstuvwxyz]|il|obi|useum)|n(?:[acefgilopruz]|ame|et)|o(?:m|rg)|p(?:[aefghklmnrstwy]|ro)|qa|r[eosuw]|s[abcdeghijklmnortuvyz]|t(?:[cdfghjklmnoprtvwz]|(?:rav)?el)|u[agkmsyz]|v[aceginu]|w[fs]|y[etu]|z[amw])
匹配:
所有的ccTLDs (Country-Code Top-Level Domains) | all gTLDs (Generic Top-Level Domains) | .arpa
不匹配:
不存在的T.L.D.s
域名
表达式:
^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}$
匹配:
regexlib.com | this.is.a.museum | 3com.com
不匹配:
notadomain-.com | helloworld.c | .oops.org
完整的和压缩的IPv6地址
表达式:
^((([0
匹配:
FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 | 1080::8:800:
不匹配:
FEDC::7654:3210::BA98:7654:3210 | FEDC:BA98:7654:3210 | ::
网络协议:
表达式:
(\s|\n|^)(\w+://[^\s\n]+)
匹配:
http://www.acme.com | ftp://ftp.acme.com/hede | gopher://asdfasd.asdfasdf
不匹配:
<a href="http://acme.com">http://www.acme.com</a> | <br>http://www.acme.
简单的匹配10进制IP地址,但不验证地址
表达式:
[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}
匹配:
192.168.1.1 | 10.2.234.1 | 66.129.71.122
不匹配:
192.168.1 | 10.2.1234.1 | 66 129 71 122
域名或主机名
表达式:
^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$
匹配:
3SquareBand.com | asp.net | army.mil
不匹配:
$SquareBand.com | asp/dot.net | army.military
Windows路径和无效UNC路径
表达式:
^([a-zA-Z]\:) (\\{1}| ((\\{1}) [^\\] ([^/:*?<>"|]*(?<![ ])))+)$
匹配:
c:\34\445\546\3.htm | C:\
不匹配:
\\qaz | c:\Ram<\ | C: or c:\\ or \\
文件扩展名
表达式:
(?!\.)[a-z]{1,4}$
匹配:
file.jpg | file.c | file.gif
不匹配:
file.34
域名地址:
^(((ht|f)tp(s?))\://)?((([a-zA-Z0-9_\-]{2,}\.)+[a-zA-Z]{2,})|((?:(?:25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)(?(\.?\d)\.)){4}))(:[a-zA-Z0-9]+)?(/[a-zA-Z0-9\-\._\?\,\'/\\\+&%\$#\=~]*)?$
匹配:
this.com | https://this.com:8080/this/this.htm | ftp://255.255.255.255/
不匹配:
.this.com | https://this.com:/ | ftps://255.256.255.255/
匹配URL字符串
表达式:
\b([\d\w\.\/\+\-\?\:]*)((ht|f)tp(s|)\:\/\/|[\d\d\d|\d\d]\.[\d\d\d|\d\d]\.|www\.|\.tv|\.ac|\.com|\.edu|\.gov|\.int|\.mil|\.net|\.org|\.biz|\.info|\.name|\.pro|\.museum|\.co)([\d\w\.\/\%\+\-\=\&\?\:\\\"\'\,\|\~\;]*)\b
匹配:
http://210.50.2.215/sd_new/WebBuilder.cgi?RegID=7449046&First=Ok&Upt=Ok&EditPage=3&S
不匹配:
Hmmmm
带端口的IP地址
表达式:
^((?:2[0-5]{2}|1\d{2}|[1-9]\d|[1-9])\.(?:(?:2[0-5]{2}|1\d{2}|[1-9]\d|\d)\.){2}(?:2[0-5]{2}|1\d{2}|[1-9]\d|\d)):(\d|[1-9]\d|[1-9]\d{2,3}|[1-5]\d{4}|6[0-4]\d{3}|654\d{2}|655[0-2]\d|6553[0-5])$
匹配:
127.0.0.1:80 | 255.255.255.0:21 |
不匹配:
在线进行正则表达式测试调整:http://www.zhongguosou.com/computer_question_tools/test_regex.aspx