0
正規表現を使用してこの関数を単純化したいと思います。 サンプル入力が可能この関数の正規表現
text =' At&T, " < I am > , At&T so < < & & '
マイコード:
def replaceentity(text):
import re
import uuid
from cgi import escape
invalid_chars_map = {'&':'&', '<':'<', '>': '>', '"': """}
replace_values = {'<':'<', '>':'>'}
replaced_dict = {}
for key, value in replace_values.items():
text = text.replace(key, value)
print "after replace >>>>>> " + text
for word in text.split():
if word in invalid_chars_map.values():
print word
uid = str(uuid.uuid4())
text = text.replace(word, uid)
replaced_dict[uid] = word
text = escape(text)
for i in replaced_dict.keys():
text = text.replace(i, replaced_dict[i])
print text
いいえ...値がすでに辞書に存在する場合、私のコードのロジックでわかるように、その単語をそのままスキップしたいと思います。 –