1.匹配北美电话号码
要匹配的文本:
J.Doe: 248-555-1234
B.smith: (313) 555.1234
A.Lee: (810)555.1234
M.Jones: 248.555.1234
正则表达式:[\(.]?[2-9]\d\d[\).]?[ -]?[2-9]\d\d[-.]\d{4}
• 中国固定电话号码
要匹配的文本:
029 8845 7890
029 88457890
(029) 8845 7890
(029) 88457890
029-8845 7890
029-88457890
029-8845-7890
正则表达式:\(?0[1-9]\d{1,3}\)?[ -]?[2-9]\d{2,3}[ -]?\d{4}
2.美国邮政编码
要匹配的文本:
999 1st Avenue ,Bigtown,NY, 11122
123 High Street,Any City,MI, 48034.1234
正则表达式:\d{5}(.\d{4})?
• 中国的邮政编码:/d(9|[0-7])\d{4}
3.IP地址
要匹配的文本:
localhost is 127.0.0.1
正则表达式:
(((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.){3}(\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5])
4.URL地址
要匹配的文本:
http://www.forta.com/blog
https://www.forta.com:80/blog/index.cfm
http://www.forta.com
http://ben:password@www.forta.com/
http://localhost/index.php?ab=1&c=2
http://localhost:8500/
正则表达式:
https?://[-\w.]+(:\d+)?(/(\w/_.|*)?)?
• 完整的URL地址
要匹配的文本:
http://www.forta.com/blog
https://www.forta.com:80/blog/index.cfm
http://www.forta.com
http://ben:password@www.forta.com/
http://localhost/index.php?ab=1&c=2
http://localhost:8500/
正则表达式:
https?://(\w*:\w*@)?[-\w.]+(:\d+)?(/([\w/_.|]*(\?\s)?)?)?
注:(\w*:\w*@)? 匹配嵌在URL字符串里的用户名和口令
[-\w.]+ 匹配主机名
(:\d+)? 匹配一个可选的端口号
5.电子邮件地址
要匹配的文本:
my name is ben forta,and my email address is ben@forta.com
正则表达式: (\w+\.)*\w+@(\w+\.)+[A-Za-z]+
(\w+\.)*\w+ 匹配用户名部分,即@之前的所有文本
(\w+\.)+ 匹配以.结束的字符的一次或多次的重复出现
[A-Za-z]+ 匹配顶级域名(com 、edu 、us 或uk等)
6.HTML注释
要匹配的文本:
<!--start of page-->
<HTML>
<!--start of head-->
<HEAD>
<TITLE>Title</TITLE> <!--page title-->
</HEAD>
<!--start of body-->
<BODY>
</BODY>
</HTML>
正则表达式:<!-{2, }.*?-{2, }>
<!-{2, } 匹配HTML注释的开头部分
.*? 匹配HTML注释的开头部分
{2, }> 匹配HTML注释的开头部分
7.javascrpt里的注释
正则表达式: //.*
要匹配的文本:
J.Doe: 248-555-1234
B.smith: (313) 555.1234
A.Lee: (810)555.1234
M.Jones: 248.555.1234
正则表达式:[\(.]?[2-9]\d\d[\).]?[ -]?[2-9]\d\d[-.]\d{4}
• 中国固定电话号码
要匹配的文本:
029 8845 7890
029 88457890
(029) 8845 7890
(029) 88457890
029-8845 7890
029-88457890
029-8845-7890
正则表达式:\(?0[1-9]\d{1,3}\)?[ -]?[2-9]\d{2,3}[ -]?\d{4}
2.美国邮政编码
要匹配的文本:
999 1st Avenue ,Bigtown,NY, 11122
123 High Street,Any City,MI, 48034.1234
正则表达式:\d{5}(.\d{4})?
• 中国的邮政编码:/d(9|[0-7])\d{4}
3.IP地址
要匹配的文本:
localhost is 127.0.0.1
正则表达式:
(((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.){3}(\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5])
4.URL地址
要匹配的文本:
http://www.forta.com/blog
https://www.forta.com:80/blog/index.cfm
http://www.forta.com
http://ben:password@www.forta.com/
http://localhost/index.php?ab=1&c=2
http://localhost:8500/
正则表达式:
https?://[-\w.]+(:\d+)?(/(\w/_.|*)?)?
• 完整的URL地址
要匹配的文本:
http://www.forta.com/blog
https://www.forta.com:80/blog/index.cfm
http://www.forta.com
http://ben:password@www.forta.com/
http://localhost/index.php?ab=1&c=2
http://localhost:8500/
正则表达式:
https?://(\w*:\w*@)?[-\w.]+(:\d+)?(/([\w/_.|]*(\?\s)?)?)?
注:(\w*:\w*@)? 匹配嵌在URL字符串里的用户名和口令
[-\w.]+ 匹配主机名
(:\d+)? 匹配一个可选的端口号
5.电子邮件地址
要匹配的文本:
my name is ben forta,and my email address is ben@forta.com
正则表达式: (\w+\.)*\w+@(\w+\.)+[A-Za-z]+
(\w+\.)*\w+ 匹配用户名部分,即@之前的所有文本
(\w+\.)+ 匹配以.结束的字符的一次或多次的重复出现
[A-Za-z]+ 匹配顶级域名(com 、edu 、us 或uk等)
6.HTML注释
要匹配的文本:
<!--start of page-->
<HTML>
<!--start of head-->
<HEAD>
<TITLE>Title</TITLE> <!--page title-->
</HEAD>
<!--start of body-->
<BODY>
</BODY>
</HTML>
正则表达式:<!-{2, }.*?-{2, }>
<!-{2, } 匹配HTML注释的开头部分
.*? 匹配HTML注释的开头部分
{2, }> 匹配HTML注释的开头部分
7.javascrpt里的注释
正则表达式: //.*