经常使用正則表達式大全!(比如:匹配中文、匹配html)

匹配中文字符的正則表達式: [u4e00-u9fa5]   

  评注:匹配中文还真是个头疼的事,有了这个表达式就好办了

  匹配双字节字符(包含汉字在内):[^x00-xff] 

  评注:能够用来计算字符串的长度(一个双字节字符长度计2。ASCII字符计1)

  匹配空白行的正則表達式:ns*r 

  评注:能够用来删除空白行

  匹配HTML标记的正則表達式:<(S*?

)[^>]*>.*?|<.*? /> 

  评注:网上流传的版本号太糟糕,上面这个也只能匹配部分,对于复杂的嵌套标记依然无能为力

  匹配首尾空白字符的正則表達式:^s*|s*$ 

  评注:能够用来删除行首行尾的空白字符(包含空格、制表符、换页符等等)。很实用的表达式

  匹配Email地址的正則表達式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 

  评注:表单验证时非常有用

  匹配网址URL的正則表達式:[a-zA-z]+://[^s]* 

  评注:网上流传的版本号功能非常有限,上面这个基本能够满足需求

  匹配帐号是否合法(字母开头,同意5-16字节。同意字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 

  评注:表单验证时非常有用

  匹配国内电话号码:d{3}-d{8}|d{4}-d{7} 

  评注:匹配形式如 0511-4405222 或 021-87888822

  匹配腾讯QQ号:[1-9][0-9]{4,} 

  评注:腾讯QQ号从10000開始

  匹配中国邮政编码:[1-9]d{5}(?

!d) 

  评注:中国邮政编码为6位数字

  匹配身份证:d{15}|d{18} 

  评注:中国的身份证为15位或18位

  匹配ip地址:d+.d+.d+.d+ 

  评注:提取ip地址时实用

  匹配特定数字: 

  ^[1-9]d*$    //匹配正整数 

  ^-[1-9]d*$   //匹配负整数 

  ^-?[1-9]d*$   //匹配整数 

  ^[1-9]d*|0$  //匹配非负整数(正整数 + 0) 

  ^-[1-9]d*|0$   //匹配非正整数(负整数 + 0) 

  ^[1-9]d*.d*|0.d*[1-9]d*$   //匹配正浮点数 

  ^-([1-9]d*.d*|0.d*[1-9]d*)$  //匹配负浮点数 

  ^-?

([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$  //匹配浮点数 

  ^[1-9]d*.d*|0.d*[1-9]d*|0?

.0+|0$   //匹配非负浮点数(正浮点数 + 0) 

  ^(-([1-9]d*.d*|0.d*[1-9]d*))|0?

.0+|0$  //匹配非正浮点数(负浮点数 + 0) 

  评注:处理大量数据时实用,详细应用时注意修正

  匹配特定字符串: 

  ^[A-Za-z]+$  //匹配由26个英文字母组成的字符串 

  ^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串 

  ^[a-z]+$  //匹配由26个英文字母的小写组成的字符串 

  ^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串 

  ^w+$  //匹配由数字、26个英文字母或者下划线组成的字符串 

  在使用RegularExpressionValidator验证控件时的验证功能及其验证表达式介绍例如以下: 

  仅仅能输入数字:“^[0-9]*$” 

  仅仅能输入n位的数字:“^d{n}$” 

  仅仅能输入至少n位数字:“^d{n,}$” 

  仅仅能输入m-n位的数字:“^d{m,n}$” 

  仅仅能输入零和非零开头的数字:“^(0|[1-9][0-9]*)$” 

  仅仅能输入有两位小数的正实数:“^[0-9]+(.[0-9]{2})?$” 

  仅仅能输入有1-3位小数的正实数:“^[0-9]+(.[0-9]{1,3})?

$” 

  仅仅能输入非零的正整数:“^+?[1-9][0-9]*$” 

  仅仅能输入非零的负整数:“^-[1-9][0-9]*$” 

  仅仅能输入长度为3的字符:“^.{3}$” 

  仅仅能输入由26个英文字母组成的字符串:“^[A-Za-z]+$” 

  仅仅能输入由26个大写英文字母组成的字符串:“^[A-Z]+$” 

  仅仅能输入由26个小写英文字母组成的字符串:“^[a-z]+$” 

  仅仅能输入由数字和26个英文字母组成的字符串:“^[A-Za-z0-9]+$” 

  仅仅能输入由数字、26个英文字母或者下划线组成的字符串:“^w+$” 

  验证用户password:“^[a-zA-Z]w{5,17}$”正确格式为:以字母开头,长度在6-18之间, 

  仅仅能包括字符、数字和下划线。 

  验证是否含有^%&'',;=?

$"等字符:“[^%&'',;=?$x22]+” 

  仅仅能输入汉字:“^[u4e00-u9fa5],{0,}$” 

  验证Email地址:“^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$” 

  验证InternetURL:“^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$” 

  验证电话号码:“^((d{3,4})|d{3,4}-)?

d{7,8}$” 

  正确格式为:“XXXX-XXXXXXX”。“XXXX-XXXXXXXX”,“XXX-XXXXXXX”, 

  “XXX-XXXXXXXX”,“XXXXXXX”。“XXXXXXXX”。

  验证身份证号(15位或18位数字):“^d{15}|d{}18$” 

  验证一年的12个月:“^(0?[1-9]|1[0-2])$”正确格式为:“01”-“09”和“1”“12” 

  验证一个月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$” 

  正确格式为:“01”“09”和“1”“31”。

  匹配中文字符的正則表達式: [u4e00-u9fa5] 

  匹配双字节字符(包含汉字在内):[^x00-xff] 

  匹配空行的正則表達式:n[s| ]*r 

  匹配HTML标记的正則表達式:/<(.*)>.*|<(.*) />/ 

  匹配首尾空格的正則表達式:(^s*)|(s*$) 

  匹配Email地址的正則表達式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 

  匹配网址URL的正則表達式:http://([w-]+.)+[w-]+(/[w- ./?

%&=]*)?

[iOS]经常使用正則表達式的更多相关文章

  1. iOS正則表達式(一)

    什么是正則表達式? 正則表達式是对字符串操作的一种逻辑公式. 作用? 在iOS开发中我们通常使用正則表達式来匹配给定的字符串是否符合我们的业务逻辑,比方说用户注冊帐号仅仅能是手机号或者邮箱等.我们还能 ...

  2. iOS_正則表達式

    iOS 正則表達式 正則表達式,又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE).计算机科学的一个概念. 正則表達式使用单个字符 ...

  3. 深入浅出理解iOS经常使用的正則表達式—基础篇[Foundation]

    參考资料:cocoachina的zys475481075的文章 几个单词 Regular ['regjʊlə]adj. 定期的:有规律的 Expression[ɪk'spreʃ(ə)n; ek-] n ...

  4. 【iOS】正則表達式抓取网页数据制作小词典

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/xn4545945/article/details/37684127 应用程序不一定要自己去提供数据. ...

  5. 黑马程序猿————Java基础日常笔记---反射与正則表達式

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 黑马程序猿----Java基础日常笔记---反射与正則表達式 1.1反射 反射的理解和作用: 首 ...

  6. js正則表達式语法

    1. 正則表達式规则 1.1 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之同样的 ...

  7. Java正則表達式入门

     众所周知,在程序开发中,难免会遇到须要匹配.查找.替换.推断字符串的情况发生,而这些情况有时又比較复杂,假设用纯编码方式解决,往往会浪费程序猿的时间及精力.因此,学习及使用正則表達式,便成了解决这一 ...

  8. jquery+正則表達式验证邮箱格式的样例

    js: $("#email").blur(function(){ //获取id相应的元素的值,去掉其左右的空格 var email = $.trim($('#email').val ...

  9. python使用正則表達式

    python中使用正則表達式 1. 匹配字符 正則表達式中的元字符有 .  ^  $ *   +  ?  { }  [ ]  \  | ( ) 匹配字符用的模式有 \d 匹配随意数字 \D 匹配随意非 ...

随机推荐

  1. [第一波模拟\day1\T2]{分班}(divide.cpp)

    [题目描述] 小N,小A,小T又大了一岁了. 现在,他们已经是高二年级的学生了.众所周知,高二的小朋友是要进行文理科分班考试的,这样子的话,三个好朋友说不定就会不分在一个班. 于是三个人决定,都考平均 ...

  2. 【MFC】利用MFC写一个计时器小程序

    1整体设计 创建对话框程序,并且设计对话框相关控件如图 相应的ID和对应的成员变量如图: 我的想法是这样的,只读属性的编辑框添加有CString类型的成员变量(如s_hour),在xxxDlg.h里另 ...

  3. 解决safari里面淘宝京东页面无法打开以及打开后乱码的问题!

    sqlite3 ~/Library/Keychains/*/ocspcache.sqlite3 'DELETE FROM responses WHERE responderURI LIKE " ...

  4. python3 时间复杂度

    时间复杂度 (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道.但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就 ...

  5. Leetcode 235.二叉搜索树的公共祖先

    二叉搜索树的公共祖先 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:"对于有根树 T 的两个结点 p.q,最近公共祖先表示为一个结点 x,满足 ...

  6. POJ-Crazy tea party,很好的一道数学题~~~

    Crazy tea party Time Limit: 1000MS   Memory Limit: 10000K        Description n participants of <& ...

  7. HDU-1232/NYOJ-608畅通工程,并查集模板题,,水过~~~

    畅通工程 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) http://acm. ...

  8. FZU2102Solve equation

    Problem 2102 Solve equation Accept: 881    Submit: 2065 Time Limit: 1000 mSec    Memory Limit : 3276 ...

  9. linux centos7 swap 设置 添加 删除

    操作  需要  root 用户 权限 dd 命令 创建swap用的分区文件 /var/swap  dd if=/dev/zero of=/var/swap bs=1024 count=2048000 ...

  10. 两行代码搞定UI主流框架

    XCNavTab XCNavTab适用于快速搭建NavigationController和TabBarController相结合的框架 https://github.com/xiaocaiabc/XC ...