Giriş dizgim He#108##108#o
gibi bir şeydir ve çıktı Hello
olmalıdır.Python regex ASCII değeriyle değiştir
Temel olarak, her #[0-9]+#
numarasını, ##
içindeki sayının ilgili ASCII karakterleriyle değiştirmek istiyorum.
Giriş dizgim He#108##108#o
gibi bir şeydir ve çıktı Hello
olmalıdır.Python regex ASCII değeriyle değiştir
Temel olarak, her #[0-9]+#
numarasını, ##
içindeki sayının ilgili ASCII karakterleriyle değiştirmek istiyorum.
karaktere ardından, basamak ayıklar tamsayı dönüştürür senin regex, bir yedek işlevini kullanın ve:
import re
s = "He#108##108#o"
print(re.sub("#(\d+)#", lambda x : chr(int(x.group(1))), s))
Sonuç:
Hello
kullanabilirsiniz re.split()
:
import re
s = "He#108##108#o"
new_s = re.split("#+", s)
final_s = ''.join(chr(int(i)) if i.isdigit() else i for i in new_s)
Çıktı:
Hello
Çoğu zaman, rozetler saçma sorular için verilir, zor sorular göz ardı edilir. Bunu al. –