无论是哪种开发语言,程序员都离不开正则表达式吧,很多功能一行正则就搞定了,先说说正则表达式的概念吧:
正则表达式(Regular Expression)是一种强大的文本匹配和处理工具,它可以用来搜索、替换、提取和验证文本数据。下面是我整理常见最全的正则表达式和使用方法
字面字符匹配:
abc:匹配精确的字符序列 "abc"。
特殊字符:
.:匹配任何字符,除了换行符 \n。
\d:匹配任何数字,等同于 [0-9]。
\D:匹配任何非数字字符,等同于 [^0-9]。
\w:匹配任何字母、数字或下划线字符,等同于 [a-zA-Z0-9_]。
\W:匹配任何非字母、数字或下划线字符,等同于 [^a-zA-Z0-9_]。
\s:匹配任何空白字符,包括空格、制表符、换行等。
\S:匹配任何非空白字符。
字符集合:
[abc]:匹配字符集合中的任何一个字符,可以是 "a"、"b" 或 "c"。
[^abc]:匹配不在字符集合中的任何字符。
量词:
*:匹配前一个元素零次或多次。
+:匹配前一个元素一次或多次。
?:匹配前一个元素零次或一次。
{n}:匹配前一个元素恰好 n 次。
{n,}:匹配前一个元素至少 n 次。
{n,m}:匹配前一个元素至少 n 次但不超过 m 次。
定位符:
^:匹配字符串的开头。
$:匹配字符串的结尾。
\b:匹配单词的边界。
分组和捕获:
():创建一个捕获组,用于分组子表达式。
(?:...):创建一个非捕获组,用于分组子表达式但不捕获匹配结果。
选择符:
|:表示或的关系,例如 cat|dog 匹配 "cat" 或 "dog"。
转义字符:
\:用于转义特殊字符,使其成为字面字符。例如,\. 匹配句点字符 "."。
反向引用:
\1, \2, ...:用于在同一正则表达式中引用先前捕获的组。
零宽断言:
(?=...):正向先行断言,表示紧跟在某个模式之前的位置。
(?<=...):反向先行断言,表示紧跟在某个模式之后的位置。
(?!...):负向先行断言,表示不紧跟在某个模式之前的位置。
(?<!...):负向反向先行断言,表示不紧跟在某个模式之后的位置。
好了,今天的分享就到这里,这些够用了吧
未经允许不得转载:免责声明:本文由用户上传,如有侵权请联系删除!
最新评论
这个文章解决了我多年在编程语言的看法,很中肯
这里可以学到前端,后端,大数据,AI技术,赞
这个站真不错,包括前端,后端,java,python,php的等各种编程语言,还有大数据和人工智能教程
vue,angular,C++和其他语言都有相关的教程
这个站我能学到python和人工智能相关的经验