Kotlin 正则表达式模式

2024 年 8 月 29 日 | 阅读 2 分钟

正则表达式在其函数中使用多种符号表示法(模式)。下面给出了一些常用的模式

符号描述
x|y匹配 x 或 y
xy匹配 x 后跟 y
[xyz]匹配 x、y 或 z
[x-z]匹配从 x 到 z 的任何字符
[^x-z]字符 '^' 作为第一个字符会否定该模式。这匹配 x-z 范围之外的任何内容
^xyz在行首匹配表达式 xyz
xyz$在行尾匹配表达式 xyz
.匹配任何单个字符

正则表达式元符号

符号描述
\d匹配数字 ([0-9])
\D匹配非数字
\w匹配单词字符
\W匹配非单词字符
\s匹配空格 [\t\r\f\n]
\S匹配非空格
\b在括号外匹配单词边界。在括号中匹配反斜杠
\B匹配非单词边界
\A匹配字符串的开头
\Z匹配字符串的结尾

正则表达式量词模式

符号描述
abcd?匹配表达式 abcd 的 0 或 1 次出现
abcd*匹配表达式 abcd 的 0 或多次出现
abcd+匹配表达式 abcd 的 1 或多次出现
abcd{x}匹配表达式 abcd 的确切 x 次出现
abcd{x,}匹配表达式 abcd 的 x 或更多次出现
abcd{x,y}匹配表达式 abcd 的 x 到 y 次出现

正则表达式示例模式

图案描述
([^\s]+(?=\.(jpg|gif|png))\.\2)匹配 jpg、gif 或 png 图像。
([A-Za-z0-9-]+)匹配字母、数字和连字符。
(^[1-9]{1}$|^[1-4]{1}[0-9]{1}$|^100$)匹配从 1 到 100(含)的任何数字。
(#?([A-Fa-f0-9]){3}(([A-Fa-f0-9]){3})?)匹配有效的十六进制颜色代码。
((?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,15})匹配包含至少一个大写字母、一个小写字母和一个数字的 8 到 15 个字符的字符串。
(\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,6})匹配电子邮件地址。
(\<(/?[^\>]+)\>)匹配 HTML 标签。

下一主题Kotlin