現在、テキスト内の数字の周囲にhtml太字のタグを追加するコードを記述しようとしています。私は、彼は100パーセントの男だったと思うPythonで一致するタグを追加します。
:
は、ここに私の入力テキストです。私は彼が100%男だと思う。私はここで私が欲しいものだ、彼はセント男
あたり100だったと思う:
は、私は彼が100パーセント男だったと思います。私は彼が100%男だと思う。私は彼が100%男だったと思う。
しかし、それは私が得るものです:
私は彼が100パーセント 100パーセントの男だったと思います。私は彼が100%男だったと思います。私は彼が100% 100%男だと思う。事前に
import re
taggedOutput=""
myInput = "I think he was a 100 percent guy \n I think he was a 100 % \guy \n I think he was a 100 per cent guy"
pattern ="(([0-9]+ ?)(%|percent|per cent))"
regex = re.compile(pattern)
# I use re.split to isolate the content I want to tag... I guess the problem is there...
chunks = re.split(regex,myInput)
#For every chunk
for chunk in chunks:
if chunk != None:
matchStat = re.match(regex,chunk)
if matchStat:
taggedOutput += '<B>'+chunk+'</B>'
else :
taggedOutput += chunk
#print
print('<P>'+taggedOutput+'</P>')
おかげで、あなたを、代わりに\1
経由でキャプチャグループ参照)
を...あなたの質問は何ですか? – jonrsharpe
文字列を置換する方が簡単ですが、分割を行う場合は、最も内側の2つのキャプチャグループを非キャプチャグループに変更してください。 –
私は探している出力を持っていたいと思います。私はre.splitがこのように振る舞う理由を理解していません。正しい結果を得るために何が使えますか?) –