回答編集履歴

3

追記

2018/10/16 03:13

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -1,4 +1,4 @@
1
- str.endswithは**『特定の文字列で終わるか』**を判定するものです。
1
+ str.endswith は**『特定の文字列で終わるか』**を判定するものです。
2
2
 
3
3
  ご提示のコードでは完全に使い方を間違えて居ます。
4
4
 
@@ -16,7 +16,15 @@
16
16
 
17
17
 
18
18
 
19
- 目的を考えると、str.endswithの活用は難しいでしょう。
19
+ 目的を考えると、str.endswith の活用は難しいでしょう。
20
+
21
+
22
+
23
+ > CHAPTER IIといった行がプリントされてしまっている
24
+
25
+
26
+
27
+ むしろこれなら str.startswith で弾けます。
20
28
 
21
29
 
22
30
 

2

修正

2018/10/16 03:13

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -26,7 +26,7 @@
26
26
 
27
27
  ```Python
28
28
 
29
- >>> pattern = re.compile(r'^.+[1-9][0-9]*$')
29
+ >>> pattern = re.compile(r'^.+?([1-9][0-9]*)$')
30
30
 
31
31
  >>>
32
32
 

1

追記

2018/10/16 03:12

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -23,3 +23,23 @@
23
23
  ---
24
24
 
25
25
  私なら**正規表現**を利用して、『末尾が数字列であるか』判定します。
26
+
27
+ ```Python
28
+
29
+ >>> pattern = re.compile(r'^.+[1-9][0-9]*$')
30
+
31
+ >>>
32
+
33
+ >>> bool(pattern.match('abc123'))
34
+
35
+ True
36
+
37
+ >>> bool(pattern.match('abcint'))
38
+
39
+ False
40
+
41
+ ```
42
+
43
+
44
+
45
+ これが出題の意に沿った解法であるかどうか分かりませんが。