私はPythonには新しく、正規表現に問題があります。リスト内の個々の単語に外部ファイルを解析するために使用しています。 "do not"や "x-ray"のようなハイフネーションのような収縮を正しく挿入できるようにする必要があります。特殊文字で分割する正規表現
実際には正常に動作しない2つの事柄があります:1)私のリストは最後の要素に空の文字列を挿入します。2)単一の引用符またはハイフン(前または後にスペースを区切る)で分割しようとすると、その隣に何があってもスペシャルキャラクターに。
「これに続いて」と括弧書きで文字を挿入できると思ったが、うまくいかないようだ。ここで
は私のコードスニペットです:
with open(badWords, 'r') as f:
line = f.read().strip()
ignoreList = split(r'[(\s\') (\'\s) (\s\-) (\-\s) \. \! \; \: \" \$ \% \& \, \+ \* \< \> \? \/ \[ \] \(\) \d]+', line)
(および "X線" "ない" が追加された)ファイルの出力は次のようになります。
[ '四'' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '、'命題 '、'それ '、'すべて '、'男性 '、'存在 '、'作成 '、'平等 '、' ']
私は間違っていますか?
ファイルの正確な内容は何ですか?また、予想される出力は何ですか? – Vallentin
期待される出力は ['Four'、 'score'、 'and'、 'do not'、 'x-ray'、 'seven'、 'years'、 'ago'、 'our'大陸 '、'新 '、'国家 '、'妊娠 '、'イン '、'リバティー '、'献身的な ' '、' '、' '、' '、' '、' '、' '' '' '' '' '' '' '' equal '] もしそれが明白でないなら、正規表現を使用する必要があります。 – LoserName
はい、入力は何ですか?入力を知らずに出力を作成するのはちょっと難しいです。 – Vallentin