回答編集履歴

5

修正

2019/04/01 12:08

投稿

YasuhiroNiji
YasuhiroNiji

スコア584

test CHANGED
@@ -22,7 +22,7 @@
22
22
 
23
23
  ```python
24
24
 
25
- pattern = r"[[Category:.+]]"
25
+ pattern = r"[[Category:(.+)]]"
26
26
 
27
27
  categories = [x.group(1) for x in re.finditer(pattern, s)]
28
28
 

4

追加

2019/04/01 12:08

投稿

YasuhiroNiji
YasuhiroNiji

スコア584

test CHANGED
@@ -24,6 +24,6 @@
24
24
 
25
25
  pattern = r"[[Category:.+]]"
26
26
 
27
- categories = [x.group(1) for x in re.finditer(r"[[Category:(.+)]]", s)]
27
+ categories = [x.group(1) for x in re.finditer(pattern, s)]
28
28
 
29
29
  ```

3

追加

2019/04/01 12:07

投稿

YasuhiroNiji
YasuhiroNiji

スコア584

test CHANGED
@@ -15,3 +15,15 @@
15
15
  categories = [x[11:-2] for x in categories]
16
16
 
17
17
  ```
18
+
19
+
20
+
21
+ なお、re.finditer()を使う方法もあります。
22
+
23
+ ```python
24
+
25
+ pattern = r"[[Category:.+]]"
26
+
27
+ categories = [x.group(1) for x in re.finditer(r"[[Category:(.+)]]", s)]
28
+
29
+ ```

2

追加

2019/04/01 12:06

投稿

YasuhiroNiji
YasuhiroNiji

スコア584

test CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  ```
10
10
 
11
- 文字の部分だけにするのであれば、以下どうですか。
11
+ 文字の部分だけにするのであれば、以下を追加すればどうですか。
12
12
 
13
13
  ```python
14
14
 

1

追加

2019/04/01 11:59

投稿

YasuhiroNiji
YasuhiroNiji

スコア584

test CHANGED
@@ -7,3 +7,11 @@
7
7
  pattern = r"[[Category:.+]]"
8
8
 
9
9
  ```
10
+
11
+ 文字の部分だけにするのであれば、以下でどうですか。
12
+
13
+ ```python
14
+
15
+ categories = [x[11:-2] for x in categories]
16
+
17
+ ```