R 中级正则表达式
Angelo Zehr
Data Journalist
| 字符类 | 示例 |
|---|---|
\\d 或 [:digit:] |
0, 1, 2, 3,… |
\\w 或 [:word:] |
a, b, c…, 1, 2, 3…, _ |
[A-Za-z] 或 [:alpha:] |
A, B, C,…, a, b, c,… |
[aeiou] |
a、e、i、o 或 u |
\\s 或 [:space:] |
" "、制表符或换行符 |
str_match_all() |
结果 |
|---|---|
"Hi John_35", "\\d" |
"3", "5" |
"Hi John_35", "\\w" |
"H", "i", "J", "o", "h", "n", "_", "3", "5" |
"Hi John_35", "[A-Za-z]" |
"H", "i", "J", "o", "h", "n" |
"Hi John_35", "[aeiou]" |
"i", "o" |
"Hi John_35", "\\s" |
" " |
| 语法 | 含义 |
|---|---|
\\w{2} |
恰好 2 次 |
\\w{2,3} |
至少 2 次,至多 3 次 |
\\w{2,} |
至少 2 次,无上限 |
\\w+ |
1 次或更多 |
\\w* |
0 次、1 次或更多 |
| 原始 | 取反 |
|---|---|
\\d 匹配数字 |
\\D 匹配除数字外的所有字符 |
\\w 匹配单词字符 |
\\W 匹配除单词字符外的所有字符 |
\\s 匹配空白 |
\\S 匹配除空白外的所有字符 |
[a-zA-Z] 匹配字母 |
[^a-zA-Z] 匹配除字母外的所有字符 |
str_match_all("Toy Story 3", "[\\d\\s]")
结果:
[,1]
[1,] " "
[2,] " "
[3,] "3"
R 中级正则表达式