fullmatch と search
次のコードを実行したときの出力として、正しいものを1つ選べ。
import re
print(bool(re.fullmatch(r"\d+", "123a")), bool(re.search(r"\d+", "123a")))
- A
True True - B
False False - C
False True - D
True False
正解と解説を見る
正解:C
re.match は先頭から、re.search はどこでも、re.fullmatch は全体が一致するかを調べる。入力の検証には、fullmatch が適している。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `import re` | — |
| 2 | `print(bool(re.fullmatch(r"\d+", "123a")), boo…` | — |
| 結果 | 実際の出力 | False True |
- A
誤り。
"123a"全体は数字だけではない。 - B
誤り。先頭の
123は一致する。 - C
正しい。
fullmatchは文字列全体が一致するかを、searchは一部が一致するかを調べる。 - D
誤り。逆になっている。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。