正規表現の最短マッチ についての質問です。
kで始まり、途中でwを挟み、zで終了する最短の文字列
(ex: kxxxwxxxz)
を取り出すために
"k.?w.?z"
というパターンを使用しました。
"asdagfakxxsswaassffzssggg"
からは正常に
"kxxsswaassffz"
を取り出すことができたのですが
"kkkkkkkkkkkkkwz"や
"kwkwkwz"
という文字列からは取り出せる文字列が
"kkkkkkkkkkkkkwz"や
"kwkwkwz"
という元の文字列のままになってしまいます。
どこを修正すればよいかご教授お願いします。
以下に使用したコードを記載します。
python
1#!/usr/bin/env python 2# -*- coding: utf-8 -*- 3 4import re 5 6 7def main(): 8 sample = "kkkkkkkkkkkkkwz" 9 pattern = re.compile("k.*?w.*?z") 10 kawazu = pattern.search(sample) 11 12 print(kawazu.group(0)) 13 14 15if __name__ == '__main__': 16 main()
回答1件
あなたの回答
tips
プレビュー