正则表达式的使用

一、正则表达式

1.1 "."和"\"

"."点儿,在正则表达式中表示任意一个字符。
"\"在正则表达式中是转意字符,当我们需要描述一个已经被正则表达式使用的特殊字符时,我们就可以通过使用"\"将其转变为原本的意思。
\d:表示任意一个数字
\w:表示任意一个单词字符(只能是 数字,字母,下划线)
\s:表示任意一个空白字符(\t \r \n \f \x0B)
\D:表示任意一个非数字字符
\W:表示任意一个非单词字符
\S:表示任意一个非空白字符

\t: 相当于键盘的tab键
\n: 换行
\r: 回车

 

1.2 "字符集合 []"

"[]"用来描述单一字符,方括号内部可以定义这个字符的内容,也可以描述一个范围。

eg:
[abc]:表示该字符只能是a或者b或者c;
[123]:表示该字符只能是1或者2或者3;
[a-z]:表示该字符可以是任意一个小写字母;
[0-9]:来表示该字符可以是任意一个数字;
[a-zA-Z0-9_]:表示该字符可以是任意字母,数字以及"下划线"。

 

1.3 "*"、"+"、"?"

通常我们需要描述的字符串会有很多重复出现的元素,但又不需要严格限制出现的次数时,我们就可以使用"*","+"这些量词。
"+":表示内容可以连续出现至少1次以上
"*":表示内容出现0-若干次
"?":表示内容出现0-1次

 

1.4 {n}、{n,}、{n,m}

除了前面讲到的量词外,有时我们也需要要求内容出现的次数有具体要求。比如手机号码。这时我们要求出现的数字就

不能是一个模糊的概念了,而必须要求11位。又比如我们要求用户输入密码时,要求密码是6-15位。遇到这类问题是,我们可以使用:
{n}:表示内容必须出现n次
{n,m}:表示内容出现n-m次
{n,}:表示内容出现至少n次
eg:\d{11} 就表示数字只能出现11位,这样就解决了上述的问题。

 

1.5 分组() |

通过上面的内容,我们还无法解决类似下面的问题: 在描述电话号码时,前面有区号,区号的形式可以是0086或者+86
那么我们如何在这两个字符串之间选择?
这时我们可以使用分组"()"。() 可以将内容看做一个整体,()中可以使用"|"来表示或关系。

eg:(+86|0086) 表示这里可以是+86或者0086。


1.6 "^"和"$"

通过在正则表达式的开始添加"^"以及末尾添加"$"来表示一个整体。若不使用它们,那么正则表达式只匹配某个

字符串的部分内容是否符合格式规则,但使用它们,则要求字符串必须从头到尾都满足该格式规则。eg:^\w{ 8,10 }$ 表示整体字符串只能出现单词字符8-10个;

相关文章

正则替换html代码中img标签的src值在开发富文本信息在移动端...
正则表达式
AWK是一种处理文本文件的语言,是一个强大的文件分析工具。它...
正则表达式是特殊的字符序列,利用事先定义好的特定字符以及...
Python界一名小学生,热心分享编程学习。
收集整理每周优质开发者内容,包括、、等方面。每周五定期发...