您的位置:首页 > 其它

常见问题的正则表达式解决方案

2016-02-18 11:53 267 查看
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里的注释

正则表达式: //.*
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: