正则表达式简述
普通字符 普通字符代表它们自身,用于精确匹配字符串中的字符。例如,a 匹配字符 a,1 匹配数字 1。 元字符 元字符是具有特殊含义的字符,用于匹配特定类型的字符或字符串模式。 常用元字符 . :匹配除换行符以外的任意单个字符。例如,a.c 可以匹配 abc、a1c 等。 ^ :匹配字符串的开始位置。例如,^abc 只匹配以 abc 开头的字符串。 $ :匹配字符串的结束位置。例如,abc$ 只匹配以 abc 结尾的字符串。 * :匹配前面的元素零次或多次。例如,ab*c 可以匹配 ac、abc、abbbc 等。 + :匹配前面的元素一次或多次。例如,ab+c 可以匹配 abc、abbbc 等,但不能匹配 ac。 ? :匹配前面的元素零次或一次。例如,ab?c 可以匹配 ac 或 abc。 {n} :匹配前面的元素恰好 n 次。例如,a{3} 只匹配 aaa。 {n,} :匹配前面的元素至少 n 次。例如,a{3,} 可以匹配 aaa、aaaa 等。 {n,m} :匹配前面的元素至少 n 次,但不超过 m 次。例如,a{3,5} 可以匹配 aaa、aaaa、aaaaa。 | :或运算符,匹配两个或多个模式中的任意一个。例如,a|b 可以匹配 a 或 b。 () :分组,用于将多个元素组合成一个单元,并可以对分组应用量词或其他操作。例如,(ab)+ 可以匹配 ab、abab 等。 字符类 字符类用于匹配一组字符中的任意一个。 常用字符类 [ ]:匹配方括号内的任意一个字符。例如,[abc] 可以匹配 a、b 或 c。 [^ ]:匹配不在方括号内的任意一个字符。例如,[^abc] 可以匹配除 a、b、c 以外的任意字符。 [a-z]:匹配任意小写字母。 [A-Z]:匹配任意大写字母。 [0-9]:匹配任意数字。 [a-zA-Z0-9]:匹配任意字母或数字。 预定义字符类 预定义字符类是一些常用字符类的缩写。 常用预定义字符类 \d:等价于 [0-9],匹配任意数字。 \D:等价于 [^0-9],匹配任意非数字字符。 \w:等价于 [a-zA-Z0-9_],匹配任意字母、数字或下划线。 \W:等价于 [^a-zA-Z0-9_],匹配任意非字母、数字或下划线的字符。 \s:匹配任意空白字符,包括空格、制表符、换行符等。 \S:匹配任意非空白字符。 边界匹配 边界匹配用于匹配字符串中的特定位置。 常用边界匹配 \b:匹配单词边界,即单词与非单词字符之间的位置。例如,\bcat\b 只匹配独立的单词 cat,而不匹配 category 中的 cat。 \B:匹配非单词边界。 贪婪与非贪婪匹配 贪婪匹配:默认情况下,量词(如 *、+、{n,} 等)是贪婪的,即尽可能多地匹配字符。例如,a.b 会匹配从第一个 a 到最后一个 b 之间的所有字符。 非贪婪匹配:在量词后面加上 ? 可以将其变为非贪婪匹配,即尽可能少地匹配字符。例如,a. ?b 会匹配从第一个 a 到最近的一个 b 之间的字符。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2312591.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!