回答編集履歴
3
root_jpさんのご指摘について追記しました。
test
CHANGED
@@ -14,13 +14,21 @@
|
|
14
14
|
|
15
15
|
|
16
16
|
|
17
|
-
また、`A-Za-z0-9`は`\w`と書くことができます。ただし、Javaの正規表現は文字列として書かなければならず、`\`を書く場合はそれ自体をエスケープする必要があり、`\\w`と書きます。(sipadan2003さんにコメントでご指摘いただいた通りです。)
|
17
|
+
また、`A-Za-z0-9_`は`\w`と書くことができます。ただし、Javaの正規表現は文字列として書かなければならず、`\`を書く場合はそれ自体をエスケープする必要があり、`\\w`と書きます。(sipadan2003さんにコメントでご指摘いただいた通りです。)
|
18
18
|
|
19
19
|
正規表現リテラルがある言語などでは、エスケープせずに書くことができるものもあります。
|
20
20
|
|
21
21
|
|
22
22
|
|
23
23
|
`String#matches`メソッドは、文字列全体にマッチしますのでこれで完成です。
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
(追記)root_jpさんのコメントのとおり、`\w`は`_`を含む、が正しいです。`\w`にした場合は単独の`_`は消してOKです。
|
28
|
+
|
29
|
+
ドキュメントにはこう書かれています。
|
30
|
+
|
31
|
+
> \w 単語構成文字: [a-zA-Z_0-9]
|
24
32
|
|
25
33
|
|
26
34
|
|
2
コメントでご指摘いただいたエスケープについての説明を追記しました。
test
CHANGED
@@ -14,7 +14,11 @@
|
|
14
14
|
|
15
15
|
|
16
16
|
|
17
|
+
また、`A-Za-z0-9`は`\w`と書くことができます。ただし、Javaの正規表現は文字列として書かなければならず、`\`を書く場合はそれ自体をエスケープする必要があり、`\\w`と書きます。(sipadan2003さんにコメントでご指摘いただいた通りです。)
|
18
|
+
|
17
|
-
|
19
|
+
正規表現リテラルがある言語などでは、エスケープせずに書くことができるものもあります。
|
20
|
+
|
21
|
+
|
18
22
|
|
19
23
|
`String#matches`メソッドは、文字列全体にマッチしますのでこれで完成です。
|
20
24
|
|
1
「1文字」を追記しました。
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
`[ ]`で囲まれたものはその集合のどれかに一致することを表します。
|
1
|
+
`[ ]`で囲まれたものはその集合のどれか1文字に一致することを表します。
|
2
2
|
|
3
3
|
英字は`[A-Z][a-z]`、数字は`[0-9]`、記号(今回の場合)は`[_-@+*;:#$%&]`です。
|
4
4
|
|