2016-08-11 7 views
0

私は小文字のプログラムを持っています。ここでは "検証済み"という単語が期待されています(大文字、小文字、大文字と小文字が混在していても関係ありません)。 「確認済み」にリセットする。以下のコードをどのように書き直す必要がありますか?re.subはPythonの文字列を変更しません

import re 
text="verified, vERIFIED, VERIFIED" 
text=re.sub(r'\verified', 'Verified', text, flags=re.IGNORECASE) 
print text 

Expected output: Verified, Verified, Verified 

Actual output:verified, vERIFIED, VERIFIED 
+0

は 'v'ので'テキスト= re.sub(r'verified」、 '' 検証済み、テキスト、フラグ=再前にバックスラッシュを削除する前に、単純にバックスラッシュを削除.IGNORECASE) ' – depperm

+0

これで問題は解決しました。ありがとうございました。これが答えです。しかし、その単語が始まったとき?バックスラッシュが必要でした。どうして? –

+0

'?'は先行するグループ/文字がオプションであることを意味します。したがって、バックスラッシュがない場合でも、それはまだ有効です(例:text = re.sub(r '\\検証済み'、 '検証済み'、text、flags = re.IGNORECASE)作業 – depperm

答えて

2

v

import re 
text="verified, vERIFIED, VERIFIED" 
text=re.sub(r'verified', 'Verified', text, flags=re.IGNORECASE) 
print text 
関連する問題