正则表达式
文章平均质量分 93
勤奋猫
这个作者很懒,什么都没留下…
展开
-
正则表达式——反向引用
反向引用,也翻译做前向引用,因为都是对前面已经获取的捕获组的引用。想要学好反向引用,需要有捕获组的基本知识,不熟悉的请看我的此篇博文。正则表达式——捕获组一个简单的例子不考虑闰年等的情况下,对年月日进行简单匹配,可以用\d{4}-\d{2}-\d{2}。结果如下图所示。对于类似"2012-12-09"的字符串能够成功匹配。如果字符串中的日期分隔符不只有"-",还可能有":"的话,就需要改变一下表达式。将正则表达式改为\d{4}[-:]\d{2}[-:]\d{2},便可以匹配两种分隔符了。但这种表原创 2021-03-09 22:12:06 · 1646 阅读 · 0 评论 -
正则表达式——贪婪模式、非贪婪模式与占有模式
正则练习测试地址:https://regex101.com/举个例子使用正则表达式<.*>去匹配字符串"aaavaabb",成功匹配到的不是"",也不是"",而是"aava"。. 表示匹配除换行符之外的任何字符,*表示它前面的字符或子表达式匹配0次或多次。之所以<.*>不去匹配"",而去匹配"aava",这是因为*默认在匹配成功的前提下,会尽可能多的去匹配字符。这就叫做"贪婪模式"。在Java中,正则的匹配模式有三种:分别是贪婪模式,非贪婪模式,占有模式。贪婪模式上面的原创 2021-03-09 20:49:28 · 701 阅读 · 0 评论 -
正则表达式——正则入门
正则表达式——正则入门正则测试地址:https://regex101.com/先从一个例子开始正则表达式。书写一个匹配手机号的正则表达式,为了方便讨论,假定手机号是1开头,第二位只能是3、5、8中的其中一个,总共11位的数字,形如13xxxxxxxxx。匹配手机号的正则表达式为:^1[358]\d{9}$,下面介绍此正则表达式中的各个符号的含义。符号含义简介^:表示字符串的开头,后面紧接着1,表示匹配的字符串要以"1"开头。1:就是匹配“1”本身,^不匹配字符,所以1就是匹配字符串的第一个字符原创 2021-03-04 22:20:26 · 1508 阅读 · 1 评论 -
正则表达式——环视(Lookaround)(几分钟学会环视)
环视(Lookaround)正则大神主页:https://blog.csdn.net/lxcnn?t=1正则表达式入门教程:https://deerchao.cn/tutorials/regex/regex.htm#top上述两个博客的文章都是以C#为基础写作的,在普通捕获组与命名捕获组的混用上,与Java有所不同正则运行测试网址:https://regex101.com/最开始学环视,是通过看《正则表达式必知必会》这本小册子,学完后感觉很模糊,好像会了,又好像不清楚,直到在网上看到下面这张图原创 2021-02-24 20:20:37 · 3849 阅读 · 0 评论 -
正则表达式——捕获分组(capture group)(Java代码)
正则大神主页:https://blog.csdn.net/lxcnn?t=1正则表达式入门教程:https://deerchao.cn/tutorials/regex/regex.htm#top上述两个博客的文章都是以C#为基础写作的,在普通捕获组与命名捕获组的混用上,与Java有所不同正则运行测试网址:https://regex101.com/正则中,每个用于匹配字符的()都是一个子表达式,可以被捕获分组捕获到,从而在正则表达式内或表达式外进行引用。环视使用了(),但是它是用来匹配位置信息的,原创 2021-02-24 17:28:30 · 3656 阅读 · 0 评论