md笔记——正则学习
正则表达式
规则记录
\d 匹配一个数字字符。等价于
[0-9]
\D 匹配一个非数字字符。等价于
[^0-9]
。. 通配符,可以匹配任意字符.
? 表示量词“零个或一个”
+ 表示量词“一个或多个”。
{} 花括号中的数字表示待查找的数字出现的次数
\w 匹配字母、数字和下划线。等价于
[_a-zA-Z0-9]
\W 匹配非单词字符。等价于
[^_a-zA-Z0-9]
\s 匹配空白符。等价于
[ \t\n\r]
。制表符\t
换行符\n
回车符\r
\S 匹配非空白字符 。等价于
[^ \t\n\r]
。- \f 换页符
- \h 水平空白符
- \H 非水平空白符
- \n 换行符
- \r 回车符
- \s 空白符
- \S 非空白符
- \t 水平制表符
- \v 垂直制表符
- \V 非垂直制表符
* **\b** 匹配单词边界
基础
匹配电话号码 ** 707-827-7019 **
707-827-7019
/[\d-]/g
/[0-9]/g捕获分组和后向引用
要创建捕获分组,先将一个\d放在一对圆括号中,这样就将它放入了一个分组中,后面可以用\1来对捕获的内容进行后向引用
(\d)\d\1 匹配的是 707
(\d)匹配第一个数字并将其捕获(数字7); \d匹配第二个数字(数字0)但没有捕获,因为没有括号; \1对捕获的数字进行反向引用(数字7)。
另一种语法来匹配电话号码:
**\d{3}-?\d{3}-?\d{4}**
**(\d{3,4}[.-]?)+**
**(\d{3}[.-]?){2}\d{4}**
- (\(\d{3}\)|\d{3}[.-]?)?\d{3}[.-]?\d{4}$
md笔记——正则学习的更多相关文章
- java JDK8 学习笔记——助教学习博客汇总
java JDK8 学习笔记——助教学习博客汇总 1-6章 (by肖昱) Java学习笔记第一章——Java平台概论 Java学习笔记第二章——从JDK到IDEJava学习笔记第三章——基础语法Jav ...
- js 正则学习小记之匹配字符串
原文:js 正则学习小记之匹配字符串 今天看了第5章几个例子,有点收获,记录下来当作回顾也当作分享. 关于匹配字符串问题,有很多种类型,今天讨论 js 代码里的字符串匹配.(因为我想学完之后写个语法高 ...
- js 正则学习小记之左最长规则
原文:js 正则学习小记之左最长规则 昨天我在判断正则引擎用到的方法是用 /nfa|nfa not/ 去匹配 "nfa not",得到的结果是 'nfa'.其实我们的本意是想得到整 ...
- js 正则学习小记之NFA引擎
原文:js 正则学习小记之NFA引擎 之前一直认为自己正则还不错,在看 次碳酸钴,Barret Lee 等大神都把正则玩的出神入化后发现我只是个战五渣. 求抱大腿,求大神调教. 之前大致有个印象,正 ...
- js 正则学习小记之匹配字符串优化篇
原文:js 正则学习小记之匹配字符串优化篇 昨天在<js 正则学习小记之匹配字符串>谈到 个字符,除了第一个 个,只有 个转义( 个字符),所以 次,只有 次成功.这 次匹配失败,需要回溯 ...
- js 正则学习小记之匹配字符串字面量优化篇
昨天在<js 正则学习小记之匹配字符串字面量>谈到 个字符,除了第一个 个,只有 个转义( 个字符),所以 次,只有 次成功.这 次匹配失败,需要回溯后用 [^"] 才能匹配成功 ...
- python3.4学习笔记(七) 学习网站博客推荐
python3.4学习笔记(七) 学习网站博客推荐 深入 Python 3http://sebug.net/paper/books/dive-into-python3/<深入 Python 3& ...
- 20155234 2016-2017-2第十周《Java学习笔记》学习总结
20155234第十周<Java学习笔记>学习总结 教材学习内容总结 网络编程 在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定 ...
- 20155234 2610-2017-2第九周《Java学习笔记》学习总结
20155234第九周<Java学习笔记>学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC(Ja ...
随机推荐
- perl 对象 bless 引用
[root@dr-mysql01 ~]# cat aa.pl use LWP::UserAgent; use Data::Dumper; my $ua = LWP::UserAgent->new ...
- nodejs递归创建目录,同步和异步方法
nodejs递归创建目录,同步和异步方法.在官方API中只提供了最基本的方法,只能创建单级目录,如果要创建一个多级的目录(./aaa/bbb/ccc)就只能一级一级的创建,感觉不是很方便,因此简单写了 ...
- 拓扑排序(TopologicalSort)算法
拓扑排序算法应用: 有些事情做都需要按照流程的去做,比如你准备约你小女友去影院看速度与激情7大片,首先你想的是我怎么到达影院,然后达到影院,你可以先买票,或者等小女友来了一起买票,然后一起进电影大厅. ...
- REST Web Server,REST介绍
参考资料: 1.http://www.chinalivedoor.com/story/1123.html 2. Backbone.js 是一种重量级javascript MVC 应用框架,通过Mod ...
- ME525+ 刷机工具及设置中心号码
接上篇: 刷机包下载地址http://sbf.droid-developers.org/umts_jordanplus/list.php,选择一款大陆包.... 设置中心号码: 拨打 *#*#46 ...
- docker端口映射设置
摘自 Docker学习笔记(3)-- 如何使用Dockerfile构建镜像 # 映射一个端口 EXPOSE port1 # 相应的运行容器使用的命令 docker run -p port1 image ...
- MAC COCOA call command 调用终端控制台程序
MAC COCOA call command 调用终端控制台程序 STEP 1 先写一个C++ DOS程序 STEP2 使用NSTask来运行,然后用NSPipe和 NSData来接受运行的结果字符串 ...
- ssh框架用JUnit测试
public class testAuxDict { //读spring配置文件 public static BeanFactory factory = new ClassPathXmlApplica ...
- Ubuntu引导修复问题
Ubuntu和Win7双系统,一不小心在Ubuntu下把Win7 C盘的boot目录给删了(手贱呀),然后Win7就没了,后来找了张WinPE启动盘修复了Win7引导结果,Ubuntu系统的引导没了. ...
- vue分页组件table-pagebar
之前一直接触都是原始的前端模型,jquery+bootstrap,冗杂的dom操作,繁琐的更新绑定.接触vue后,对前端MVVM框架有了全新的认识.本文是基于webpack+vue构建,由于之前的工作 ...