1

文字列が与えられた場合、正確に4桁のすべてのシーケンスを抽出するにはどうすればよいですか?

つまり、1234 12 12345 1bc5 9876取得したいからです[1234, 9876]

まではre.findall('\D\d\d\d\d\D')到達しましたが、テキストの境界では失敗します(一致の前後に文字がない場合)。


解決策はPython2.7を使用することが望ましいですが、これはかなり一般的だと思います。どの言語でもかまいません。

4

1 に答える 1

7

一般的な答えは驚くほど複雑です。詳細については、こちらをご覧ください。ただし、この特定のケースでは、単語境界アサーションを使用できます\b

re.findall(r'\b\d{4}\b', ....)
于 2012-05-05T21:24:25.470 に答える