月末了,这个月才写了2遍文章,对自己略感失望了,最近是有些忙,等闲些日子后,再整理一些文章分享给大家!

这遍是关于正则表达式,因为写项目时要用到正则表达式,所以就学习了下,另写一遍文章,方便记忆!

1、首先是介绍正则的语法

在此网上搜索的一些文章供参考:

http://www.cnblogs.com/deerchao/archive/2006/08/24/zhengzhe30fengzhongjiaocheng.html

百度百科

http://msdn.microsoft.com/zh-cn/library/ae5bf541(VS.80).aspx

常用到的一些:

 

1.验证用户名和密码:("^[a-zA-Z]\w{5,15}$")正确格式:"[A-Z][a-z]_[0-9]"组成,并且第一个字必须为字母6~16位;
2.验证电话号码:("^(\d{3,4}-)\d{7,8}$")正确格式:xxx/xxxx-xxxxxxx/xxxxxxxx;
3.验证手机号码:"^1[3|4|5|8][0-9]\\d{8}$";
4.验证身份证号(15位或18位数字):"\\d{17}[[0-9],0-9xX]";
5.验证Email地址:("^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$");

 

2、关于处理微博上类似 @ 或者 # 的特殊转义字符

可以用:AutoHyperlinks

但是有人说,不支持中文,那么,咱们只要改一下正则就可以了

下载文件打开JSTwitterCoreTextView.m

把如下正则:

 

NSArray *expressions = [[[NSArray alloc] initWithObjects:

                             @"(@[a-zA-Z0-9_]+)", // screen names

                             @"(#[a-zA-Z0-9_-]+)", // hash tags

                             nil] autorelease];

改成:

 

 NSArray *expressions = [[[NSArray alloc] initWithObjects:

                             @"(@[a-zA-Z0-9_\u4E00-\u9FA5]+)"// screen names

                             @"(#([a-zA-Z0-9_\u4E00-\u9FA5]*)#)"// hash tags

                             nil] autorelease];

“@[a-zA-Z0-9_\u4E00-\u9FA5]+”  :意思是以@开头的后面可以跟a-z、A-Z、0-9、_(下划线)、\u4E00-\u9FA5(汉字)、+(+是和*类似的元字符,不同的是*匹配重复任意次(可能是0次),而+则匹配重复1次或更多次),可以用这些组成字符串

“#([a-zA-Z0-9_\u4E00-\u9FA5]*)#)”  :意思是只能是两个#号之间组成的字符串

 

3、接下了介绍几个可以测试正则的工具

网页工具:http://tool.chinaz.com/regex/

mac下的工具:http://download.csdn.net/detail/doorxp/3835646#comment

这个虽然很简陋,不过可以用!

 

ok,我是用到什么就会查一些资料,了解一些,希望能给大家一些帮助!

 

转载请注明原处

posted on 2016-07-14 16:53  ZOYOO  阅读(271)  评论(0编辑  收藏  举报