回答編集履歴
3
追記
answer
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
str.endswithは**『特定の文字列で終わるか』**を判定するものです。
|
1
|
+
str.endswith は**『特定の文字列で終わるか』**を判定するものです。
|
2
2
|
ご提示のコードでは完全に使い方を間違えて居ます。
|
3
3
|
```Python
|
4
4
|
>>> 'abc123'.endswith('int')
|
@@ -7,8 +7,12 @@
|
|
7
7
|
True
|
8
8
|
```
|
9
9
|
|
10
|
-
目的を考えると、str.endswithの活用は難しいでしょう。
|
10
|
+
目的を考えると、str.endswith の活用は難しいでしょう。
|
11
11
|
|
12
|
+
> CHAPTER IIといった行がプリントされてしまっている
|
13
|
+
|
14
|
+
むしろこれなら str.startswith で弾けます。
|
15
|
+
|
12
16
|
---
|
13
17
|
私なら**正規表現**を利用して、『末尾が数字列であるか』判定します。
|
14
18
|
```Python
|
2
修正
answer
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
---
|
13
13
|
私なら**正規表現**を利用して、『末尾が数字列であるか』判定します。
|
14
14
|
```Python
|
15
|
-
>>> pattern = re.compile(r'^.+[1-9][0-9]*$')
|
15
|
+
>>> pattern = re.compile(r'^.+?([1-9][0-9]*)$')
|
16
16
|
>>>
|
17
17
|
>>> bool(pattern.match('abc123'))
|
18
18
|
True
|
1
追記
answer
CHANGED
@@ -10,4 +10,14 @@
|
|
10
10
|
目的を考えると、str.endswithの活用は難しいでしょう。
|
11
11
|
|
12
12
|
---
|
13
|
-
私なら**正規表現**を利用して、『末尾が数字列であるか』判定します。
|
13
|
+
私なら**正規表現**を利用して、『末尾が数字列であるか』判定します。
|
14
|
+
```Python
|
15
|
+
>>> pattern = re.compile(r'^.+[1-9][0-9]*$')
|
16
|
+
>>>
|
17
|
+
>>> bool(pattern.match('abc123'))
|
18
|
+
True
|
19
|
+
>>> bool(pattern.match('abcint'))
|
20
|
+
False
|
21
|
+
```
|
22
|
+
|
23
|
+
これが出題の意に沿った解法であるかどうか分かりませんが。
|