2017-01-16 36 views
0

私は本当に大きな作業プロジェクト(Javaで)を持っていて、UTF-8への移行後にエンコーディングが変更されました。 私はすべての「Unicodeの置換文字」を(置き換えるためのpythonでスクリプトをコーディングしています)が、私はトラブルこのラインをやってたんだ:Python - 文字列をUnicodeの置換文字と比較する

if ("�" in word) : 
    // replace word for proper one 

Pythonインタプリタにはないので、明らかにこれは動作しません。特殊文字を理解する。私はそれを見つめ、u "\ uFFD"のようなものを見つけましたが、動作させることはできませんでした。

編集:私は、Python IDLEシェルでそれをやってみましたし、このメッセージは enter image description here

+1

正確にはどういう意味ですか? Python 3は文字列にUnicodeを使用し、 " "が文字列内に存在するかどうかを検出できます。 – Tagc

+0

何がうまくいかないのですか?文字を単語で見つけることは?または交換のステップですか? – doctorlove

+0

コンソールがいくつかの文字を表示する方法を知らない場合、コンソールで '' "'を見ることができますが、Pythonのテキストに '' "'があることを意味するわけではありません。 – furas

答えて

0

を表示されます、私はあなたの質問を誤解していた場合、私はこの回答を削除しますが、Pythonの3(内、さらなる試験から同様のPython 2)あなただけの他の文字と同様 "" などのUnicode文字を扱うことができます。

def replace_special_characters(sentence): 
    return sentence.replace("�", "REPLACEMENT") 

sentence_a = "foo bar" 
sentence_b = "baz �" 

print(replace_special_characters(sentence_a)) 
print(replace_special_characters(sentence_b)) 

出力

foo bar 
baz REPLACEMENT 
+0

はPython 2で動作します。少なくとも私のLinuxのボックス2.7.10で動作します。 – MooingRawr

+0

@MooingRawrええ、これをPython 2.7.10 IDLEシェルでテストしたところ、うまく動作しますが、初めて実行したときには、上部に「utf-8」という宣言があります。 – Tagc

+0

@Tagc Python IDLEシェルでやってみましたが、このメッセージが表示されます。img.ctrlv.in/img/17/01/16/587cfb8b91399.png – Franch