回答編集履歴

3

root_jpさんのご指摘について追記しました。

2016/08/12 08:48

投稿

argius
argius

スコア9390

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

コメントでご指摘いただいたエスケープについての説明を追記しました。

2016/08/12 08:48

投稿

argius
argius

スコア9390

test CHANGED
@@ -14,7 +14,11 @@
14
14
 
15
15
 
16
16
 
17
+ また、`A-Za-z0-9`は`\w`と書くことができます。ただし、Javaの正規表現は文字列として書かなければならず、`\`を書く場合はそれ自体をエスケープする必要があり、`\\w`と書きます。(sipadan2003さんにコメントでご指摘いただいた通りです。)
18
+
17
- また`A-Za-z0-9`は`\w`と書くことができます。
19
+ 正規表現リテラルがある言語などではエスケープせずに書くことができるものもあります。
20
+
21
+
18
22
 
19
23
  `String#matches`メソッドは、文字列全体にマッチしますのでこれで完成です。
20
24
 

1

「1文字」を追記しました。

2016/08/10 17:44

投稿

argius
argius

スコア9390

test CHANGED
@@ -1,4 +1,4 @@
1
- `[ ]`で囲まれたものはその集合のどれかに一致することを表します。
1
+ `[ ]`で囲まれたものはその集合のどれか1文字に一致することを表します。
2
2
 
3
3
  英字は`[A-Z][a-z]`、数字は`[0-9]`、記号(今回の場合)は`[_-@+*;:#$%&]`です。
4
4