ile eşleşen tüm dizeleri değiştirin. Bir belgeye sahip olduğum bir jinja şablonunda görüntülemeye çalışıyorum. Bu negxxx string xxxneg
<span class="SomeCssClass_neg_xxx"> string </span>
olması gerektiği gibi dize yerine çalışıyorum. Sorun, kullanıyorum \1
numaralandırılan eşleşen gruptur. Bildiğim kadarıyla sadece birden fazla eşleşme var 1. yardıma ihtiyacım var.python regex
import re
StringIn = 'negxxx data1 xxxneg out of span negxxx data2 xxxneg negzzz data1 zzzneg out of span negzzz data2 zzzneg'
StringIn = re.sub(r"negxxx(.*)xxxneg", r"<span class='neg_xxx'>\1</span>" , StringIn)
StringIn = re.sub(r"negzzz(.*)zzzneg", r"<span class='neg_zzz'>\1</span>" , StringIn)
print StringIn
alıyorum:
doğru değil<span class='neg_xxx'> data1 xxxneg out of span negxxx data2 </span> <span class='neg_zzz'> data1 zzzneg out of span negzzz data2 </span>
ne ihtiyacım şudur: .*
<span class='neg_xxx'> data1 </span> out of span <span class='neg_xxx'> data2 </span><span class='neg_zzz'> data1 </span> out of span <span class='neg_zzz'> data2 </span>
ben ** ninja ** şablon olarak okuyun. 12 –
Bana vahşi bir tahmin yapalım. Tembel '?' Niceleyici ile deneyin. '. *' çok fazla eşleşiyor. '. *?' Kullanın. –