回答編集履歴

5

いつの間にか`\`が取り除かれて意味不明な説明になっていたので再度`\`を追加

2023/03/01 02:15

投稿

Daregada
Daregada

スコア11990

test CHANGED
@@ -1,27 +1,14 @@
1
- 検索対象のファイルのフルパスに`(番号,番号)`が含まれていなければ、`(\d+,\d+).*`で行番号以降行末までマッチするでしょう。
1
+ 検索対象のファイルのフルパスに`(番号,番号)`が含まれていなければ、`\(\d+,\d+\).*`で行番号以降行末までマッチするでしょう。
2
2
 
3
-
4
-
5
- フルパスに`(番号,番号)`が含まれる可能性まで考えると、行番号の直後に表示される空白2個、その直後に表示される`[]`で囲まれたエンコーディングを示す文字列、その直後に表示される`:`も含めて、`(\d+,\d+) [.*?]:.*`とでも指定すればいいでしょう。
3
+ フルパスに`(番号,番号)`が含まれる可能性まで考えると、行番号の直後に表示される空白2個、その直後に表示される`[]`で囲まれたエンコーディングを示す文字列、その直後に表示される`:`も含めて、`\(\d+,\d+\) [.*?]:.*`とでも指定すればいいでしょう。
6
-
7
-
8
4
 
9
5
  ---
10
-
11
6
  補足: 正規表現を普段使わないとのことなので、少し補足します。
12
-
13
- - `(` → 文字`(`そのもの。正規表現の`(`は特殊な意味を持つ記号(メタ文字)なので、開き丸カッコそのものをマッチさせるは、`(`と書く必要があります。
7
+ - `\(` → 文字`(`そのもの。正規表現の`(`は特殊な意味を持つ記号(メタ文字)なので、開き丸カッコそのものをマッチさせるは、`\(`と書く必要があります。
14
-
15
8
  - `\d` → 0~9の数字のどれか1文字。正規表現の`d`は文字dそのもので、`\d`は特殊な意味を持つ文字列(メタ文字列)になります。
16
-
17
9
  - `+` → 直前のパターンの1回以上の繰り返し。ここでは、直前のパターンが`\d`なので、「0~9の数字のどれか1文字」が1回以上繰り返されるパターンにマッチします。同じ数字の連続でなくても構いません。
18
-
19
10
  - `,` → 文字`,`そのもの。
20
-
21
11
  - `\d+` → すでに説明済み。
22
-
23
- - `)` → 文字`)`そのもの。正規表現の`)`は特殊な意味を持つ記号(メタ文字)なので、閉じ丸カッコそのものをマッチさせるは、`)`と書く必要があります。
12
+ - `\)` → 文字`)`そのもの。正規表現の`)`は特殊な意味を持つ記号(メタ文字)なので、閉じ丸カッコそのものをマッチさせるは、`\)`と書く必要があります。
24
-
25
13
  - `.` → (改行を除く)任意の1文字。
26
-
27
14
  - `*` → 直前のパターンの0回以上の繰り返し。ここでは、直前のパターンが`.`なので、「(改行を除く)任意の1文字」が0回以上繰り返されるパターンにマッチします。`*`は貪欲にマッチするので、閉じ丸カッコの直後の文字から、改行の直前の文字まですべて`.*`にマッチすることになります。

4

表現を修正

2021/09/02 11:52

投稿

Daregada
Daregada

スコア11990

test CHANGED
@@ -5,6 +5,8 @@
5
5
  フルパスに`(番号,番号)`が含まれる可能性まで考えると、行番号の直後に表示される空白2個、その直後に表示される`[]`で囲まれたエンコーディングを示す文字列、その直後に表示される`:`も含めて、`(\d+,\d+) [.*?]:.*`とでも指定すればいいでしょう。
6
6
 
7
7
 
8
+
9
+ ---
8
10
 
9
11
  補足: 正規表現を普段使わないとのことなので、少し補足します。
10
12
 

3

誤字を修正

2021/09/02 11:52

投稿

Daregada
Daregada

スコア11990

test CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  - `\d+` → すでに説明済み。
20
20
 
21
- - ')` → 文字`)`そのもの。正規表現の`)`は特殊な意味を持つ記号(メタ文字)なので、閉じ丸カッコそのものをマッチさせるは、`)`と書く必要があります。
21
+ - `)` → 文字`)`そのもの。正規表現の`)`は特殊な意味を持つ記号(メタ文字)なので、閉じ丸カッコそのものをマッチさせるは、`)`と書く必要があります。
22
22
 
23
23
  - `.` → (改行を除く)任意の1文字。
24
24
 

2

補足を追加

2021/09/02 04:12

投稿

Daregada
Daregada

スコア11990

test CHANGED
@@ -3,3 +3,23 @@
3
3
 
4
4
 
5
5
  フルパスに`(番号,番号)`が含まれる可能性まで考えると、行番号の直後に表示される空白2個、その直後に表示される`[]`で囲まれたエンコーディングを示す文字列、その直後に表示される`:`も含めて、`(\d+,\d+) [.*?]:.*`とでも指定すればいいでしょう。
6
+
7
+
8
+
9
+ 補足: 正規表現を普段使わないとのことなので、少し補足します。
10
+
11
+ - `(` → 文字`(`そのもの。正規表現の`(`は特殊な意味を持つ記号(メタ文字)なので、開き丸カッコそのものをマッチさせるは、`(`と書く必要があります。
12
+
13
+ - `\d` → 0~9の数字のどれか1文字。正規表現の`d`は文字dそのもので、`\d`は特殊な意味を持つ文字列(メタ文字列)になります。
14
+
15
+ - `+` → 直前のパターンの1回以上の繰り返し。ここでは、直前のパターンが`\d`なので、「0~9の数字のどれか1文字」が1回以上繰り返されるパターンにマッチします。同じ数字の連続でなくても構いません。
16
+
17
+ - `,` → 文字`,`そのもの。
18
+
19
+ - `\d+` → すでに説明済み。
20
+
21
+ - ')` → 文字`)`そのもの。正規表現の`)`は特殊な意味を持つ記号(メタ文字)なので、閉じ丸カッコそのものをマッチさせるは、`)`と書く必要があります。
22
+
23
+ - `.` → (改行を除く)任意の1文字。
24
+
25
+ - `*` → 直前のパターンの0回以上の繰り返し。ここでは、直前のパターンが`.`なので、「(改行を除く)任意の1文字」が0回以上繰り返されるパターンにマッチします。`*`は貪欲にマッチするので、閉じ丸カッコの直後の文字から、改行の直前の文字まですべて`.*`にマッチすることになります。

1

補足を追加

2021/09/02 04:10

投稿

Daregada
Daregada

スコア11990

test CHANGED
@@ -1 +1,5 @@
1
- 検索対象のファイルのフルパスに`(番号,番号)`が含まれていないなければ、`(\d+,\d+).*`で行番号以降行末までマッチするでしょう。
1
+ 検索対象のファイルのフルパスに`(番号,番号)`が含まれていなければ、`(\d+,\d+).*`で行番号以降行末までマッチするでしょう。
2
+
3
+
4
+
5
+ フルパスに`(番号,番号)`が含まれる可能性まで考えると、行番号の直後に表示される空白2個、その直後に表示される`[]`で囲まれたエンコーディングを示す文字列、その直後に表示される`:`も含めて、`(\d+,\d+) [.*?]:.*`とでも指定すればいいでしょう。