月末了,这个月才写了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,我是用到什么就会查一些资料,了解一些,希望能给大家一些帮助!

转载请注明原处

正则表达式用户名密码电话身份证Email使用的更多相关文章

  1. Android之利用正则表达式校验邮箱、手机号、密码、身份证号码等

    概述 现在Android应用在注册的时候基本会校验邮箱.手机号.密码.身份证号码其中一项或多项,特此收集了相关的正则表达式给大家分享.除了正则表达式,文章末尾提供Demo中有惊喜哦! 具体验证的图片效 ...

  2. iOS - 正则表达式判断邮箱、身份证..是否正确:

    iOS - 正则表达式判断邮箱.身份证..是否正确: //邮箱 + (BOOL) validateEmail:(NSString *)email {     NSString *emailRegex ...

  3. 【WCF】使用“用户名/密码”验证的合理方法

    我不敢说俺的方法是最佳方案,反正这世界上很多东西都是变动的,正像老子所说的——“反(返)者,道之动”.以往看到有些文章中说,为每个客户端安装证书嫌麻烦,就直接采用把用户名和密码塞在SOAP头中发送,然 ...

  4. AppScan 测试需要输入用户名密码的网站

    Cisco有专门的网页版的AppScan,使用前需要向有关的team申请account和权限. account和权限申请成功后,登录AppScan网站,创建自己的文件夹目录,然后在自己的目录下新建sc ...

  5. Toritoisegit记住用户名密码

    TortoiseGit每次连接git都得输入密码了,如果我们用到的比较频繁这样是很麻烦的,那么下面我们来看一篇关于window设置TortoiseGit连接git不用每次输入用户名和密码的配置,具体的 ...

  6. Windows下让Git记住用户名密码(https)

    最近开始跟老板共同维护公司的框架代码,于是毫不犹豫地选择了Git这个驰名的版本控制系统(公司使用的是TFS,但外网访问老是断线). 选择的托管平台是OSChina,原因是其可以新建私有项目. 在拉取和 ...

  7. 解决`向github提交代码是老要输入用户名密码`

    在命令行输入命令:git config --global credential.helper store☞ 这一步会在用户目录下的.gitconfig文件最后添加: [credential] help ...

  8. git 生成公钥 使用命令行无需输入用户名密码(windows)

    之前设置过一次,后来就忘记了,今天改完密码之后发现命令行clone时验证身份失败,重新设置公钥,记录一下 1. 由于之前设置过公钥,所以不用输入用户名密码就可以执行git命令.现在密码变了,取消公钥, ...

  9. 向github提交代码总是要输入用户名密码

    在命令行输入命令: $ git config --global credential.helper store 这一步会在用户目录下的.gitconfig文件最后添加: [credential]    ...

随机推荐

  1. ISymbol

    public void Draw (IGeometry Geometry); public void QueryBoundary (     int hDC,     ITransformation ...

  2. D3D9 浮点精度的问题

    最近在对我们的渲染引擎进行优化的时候,发现一个奇怪的现象,因为我们做了Pre-Z(把比较大的物体先绘制一遍,这个时候关闭颜色写,只开启深度测试和写入,目的是为了减少后面一些不可见像素的计算.),面在绘 ...

  3. MVC 登录认证与授权及读取登录错误码

    最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精    最近在自学MVC,遇到的问题很多,索性一点点总结下 ...

  4. Java基础之泛型——使用二叉树进行排序(TryBinaryTree)

    控制台程序. 1.实现针对容器类的基于集合的循环 为了让容器类类型的对象能够在基于集合的for循环中可用,类必须并且只需要满足一个要求——必须实现泛型接口java.lang.Iterable<& ...

  5. Java基础之访问文件与目录——获取与文件存储有关的信息(GetFileStores)

    控制台程序,列出存储在系统中的文件的详细信息 import java.nio.file.FileStore; import java.nio.file.FileSystems; import java ...

  6. PostgreSQL Replication之第十章 配置Slony(3)

    10.3 复制您的第一个数据库 这个小小的介绍之后,我们可以继续前进并复制我们的第一个数据库.要做到这一点,我们可以在一个数据库实例上创建两个数据库.我们想简单地在这两个数据库之间进行复制. [ 您在 ...

  7. 基于Qt实现的截图小程序

    在最近做的行人检测项目中,由于需要训练分类器,而分类器的训练又需要有一个一定长宽的样本.为了方便样本的采集,因此实现了这样的一个截图程序.该程序的主要功能是加载视频到程序中,程序可以对视频进行播放.暂 ...

  8. fzuoj Problem 2182 水题

    http://acm.fzu.edu.cn/problem.php?pid=2182 Problem 2182 水题 Accept: 188    Submit: 277Time Limit: 100 ...

  9. 【IOS】2.基础

    1.Identifers命名规则 Identifers is combined with letters, underline, dollars, numbers must begin with le ...

  10. 查看真机的系统版本sdk

    1.adb devices 确保连接上了真机 2.adb shell 进入android系统 3.进入system目录下 4.查看build.prop文件 cat build.prop