我有这个Perl正则表达式,我想将它转换为Python。Perl正则表达式的Python版本
我想要的正则表达式是一个搜索和替换,找到文本并将其转换为大写。它也必须是第一个发生的结果。 Perl的正则表达式:
open FILE, "C:/thefile.txt";
while (<FILE>){
# Converts "foo yadayada bar yadayada"
# to "FOO bar yadayada"
s/(^.*?)(yadayada)/\U$1/;
print;
}
Python的正则表达式我已经无法正常工作:
import re
lines = open('C:\thefile.txt','r').readlines()
for line in lines:
line = re.sub(r"(yadayada)","\U\g<1>", line, 1)
print line
我意识到\U\g<1>
是什么是不工作,因为Python不支持\U
大写..所以我该用什么!?!
记录的Perl代码所做的Python程序员谁不使用Perl足够熟悉。 – ikegami
你确定这不是's /(yadayada)/ \ U $ 1 /'吗? ' – ikegami