回答編集履歴

3

追記

2019/11/16 07:37

投稿

LouiS0616
LouiS0616

スコア35668

test CHANGED
@@ -26,4 +26,4 @@
26
26
 
27
27
  むしろバックスラッシュはエスケープ処理に使われるので、
28
28
 
29
- 正規表現は "\?" あるいは r"?" にするとより丁寧でしょう。
29
+ 正規表現は "\?" あるいは r"?" にするとより丁寧でしょう。後者がより好ましいです。

2

表現の修正

2019/11/16 07:36

投稿

LouiS0616
LouiS0616

スコア35668

test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  仕様です。"hoge?piyo" でもマッチするでしょう。
8
8
 
9
- re.matchは先頭一致、re.searchは部分一致を検出できます。
9
+ re.matchは先頭一致、re.searchは部分一致を試行します。
10
10
 
11
11
 
12
12
 

1

追記

2019/11/16 07:35

投稿

LouiS0616
LouiS0616

スコア35668

test CHANGED
@@ -4,10 +4,26 @@
4
4
 
5
5
 
6
6
 
7
- 仕様です。"hoge?fuga" でもマッチするでしょう。
7
+ 仕様です。"hoge?piyo" でもマッチするでしょう。
8
8
 
9
9
  re.matchは先頭一致、re.searchは部分一致を検出できます。
10
10
 
11
11
 
12
12
 
13
13
  アンカー ^ $ を併用するか、re.fullmatchを使って下さい。
14
+
15
+
16
+
17
+ > そこでRAW文字の検索なら出来るかと思い
18
+
19
+
20
+
21
+ ?は正規表現中では特殊な意味を持ちますが、Pythonの文字列内ではただの文字です。
22
+
23
+ Python側でいくらraw文字列指定をしても意味はありません。
24
+
25
+
26
+
27
+ むしろバックスラッシュはエスケープ処理に使われるので、
28
+
29
+ 正規表現は "\?" あるいは r"?" にするとより丁寧でしょう。