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回以上 |
| 元 | 否定 |
|---|---|
\\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で学ぶ中級正規表現