码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式匹配

时间:2019-08-19 09:21:07      阅读:68      评论:0      收藏:0      [点我收藏+]

标签:字符   table   正则表达式   转义   次数   特殊   strong   重复   body   

切从最基本的开始。模式,是正则表示式最基本的元素,它们时一组描述

字符串特征的字符。模式可以简单,由普通的字符串组成,也可以复杂,往往用特殊的字符表示一个范围内的字符、重复出现,或表示上下文。

例如:

^love

这个模式包含一个特殊的字符^,表示该模式只匹配那些以love开头的字符串。例如该模式与字符串“lovewe”,与“I love you”不匹配。正如^符号表示开头一样,$符号表示用来匹配哪些以给定模式结尾的字符串。

man$

这个模式与“policeman”匹配,与policy不匹配。字符^和$同时使用时,表示精确匹配(字符串与模式一样)。例如:只匹配字符串“bash”。

^bash$

稍微复杂的字符,如标点符号和白字符(空格、制表符等),要用到转义符。所有的转义序列都用反斜杠(\)打头。制表符的转义序列是:\t。因此如果我们要检测一个字符串是否以制表符开头,可以用模式:

^\t

类似的,用“\n”表示“新行”,“\r”表示“回车”。其他特殊符号,可以用在前面加上反斜杠,如果反斜杠本身用\\表示,句号.用\.表示,以此类推。如图所示

字符簇

描述

[[:alnum:]]

字母与数字字符。例如:[[:alnum:]]+

[[:alpha:]]

字母字符(包括大小写字母)。例如:[[:alpha:]]{4}

[[:blank:]]

空格与制表符。例如:[[:blank:]]*

[[:digit:]]

数字字母。例如:[[:digit:]]?

[[:lower:]]

小写字母。例如:[[:lower:]]{5,}

[[:upper:]]

大写字母。例如:[[:upper:]]+

[[:punct:]]

标点符号。例如:[[:punct:]]

[[:space:]]

包括换行符,回车等在内的所有空白。例如:[[:space:]]+

但更多的情况下,可能要匹配一个单词或一组数字。一个单词有若干个字母组成,一组数字有若干个单数组成。跟在字符或字符簇后面的花括号({})用来确定前面的内容的重复出现的次数

正则表达式匹配

标签:字符   table   正则表达式   转义   次数   特殊   strong   重复   body   

原文地址:https://www.cnblogs.com/momenglin/p/11375217.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!