私はPythonの初心者です。問題を解決しています。次のコード行が適切な意味を示すことができます。Python正規表現の理解
if collections.Counter(re.findall(r"[\w']+", decrypted))[repeat] >= 2:
return decrypted
復号化は長い文字列であり、繰り返しはその文字列の単語です。
ありがとうございます。
私はPythonの初心者です。問題を解決しています。次のコード行が適切な意味を示すことができます。Python正規表現の理解
if collections.Counter(re.findall(r"[\w']+", decrypted))[repeat] >= 2:
return decrypted
復号化は長い文字列であり、繰り返しはその文字列の単語です。
ありがとうございます。
てみましょう:
decrypted = "foo bar baz"
その後
re.findall(r"[\w']+", decrypted)
戻りdecrypted
マッチルールr"[\w']+"
またはのストリングのlist
文字、数字または単一引用符記号持つすべての文字列。結果は['foo', 'bar', 'baz']
です。
方法collections.Counterリストから同じようなオブジェクトdict
を作成します。このオブジェクトの演算子[x]
は、指定されたリスト内でx
の数を返します。最後に
は:
collections.Counter(re.findall(r"[\w']+", decrypted))[repeat]
戻りdecrypted
にrepeat
サブラインのカウント。
\w
試合すべての文字と数字を意味する([a-zA-Z0-9_]
に等しい)任意の単語文字と1回以上を意味します(ただし、少なくとも1)
+
を強調
あなたは(グローバル)findall
にしてみてください