加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

从实例学习正则表达式

发布时间:2020-12-14 01:24:35 所属栏目:百科 来源:网络整理
导读:需要先搭个环境,我用vc+pcre库 从网上下载了pcre-8.36.zip和cmake-3.1.3-win32-x86.exe 用cmake生成vc的工程文件后,用vc打开工程,编译生成pcre.dll,pcrecpp.dl等文件,其中pcretest.exe用来测试正则表达式的。 在网上搜索验证邮箱的范例,发现这个写的比

需要先搭个环境,我用vc+pcre库

从网上下载了pcre-8.36.zip和cmake-3.1.3-win32-x86.exe

用cmake生成vc的工程文件后,用vc打开工程,编译生成pcre.dll,pcrecpp.dl等文件,其中pcretest.exe用来测试正则表达式的。


在网上搜索验证邮箱的范例,发现这个写的比较好http://www.chinasb.org/archives/2012/02/4270.shtml

pattern应该是 ^[_A-Za-z0-9-]+(.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(.[A-Za-z0-9]+)*(.[A-Za-z]{2,})$


在测试工具中运行如下


re> /^[_A-Za-z0-9-]+(.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(.[A-Za-z0-9]+)*(.[A-Za-z]{2,})$/

data> zhiqiang_z

No match

data> zhiqiang_z.info@abc.google.uk

0: zhiqiang_z.info@abc.google.uk

1: .info

2: .google

3: .uk


no match 那个不用说了

match那个,从结果看 0 代表完全匹配的值

1 代表分组0的值,()里面就是分组

2代表分组1的值,

3 代表分组1的值,

如果没有此分组,则显示unset

比如

data> zhiqiang_z@164.com

0: zhiqiang_z@164.com

1: <unset>

2: <unset>

3: .com



需要感谢 《正则表达式30分钟入门教程》的作者

http://www.oschina.net/question/12_9507


引导我的学习。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读