这是一个更新的问题 Python split by regex look behind
我需要将控制代码放在regex中,如0x0a 0x0d,或任何其他控制代码,如0x07 0x00
当我使用以下代码时,结果不正确:
import re
a = '''aaaaa
bbbb
cccc
'''
x = re.findall(r"[^%s]+%s" % (0x0a,0x0a),a,re.DOTALL)
print x
我得到[]
。
我可以使用Python split by regex look behind中的答案,因为控制代码是0x0a==\n
,其他控制代码呢?
答案 0 :(得分:1)
由@KevinGuan提醒,我发现了问题
这是正确的代码:
import re
a = '''aaaaa
bbbb
cccc
'''
x = re.findall(r"[^%s]+%s" % (chr(0x0a),chr(0x0a)),a,re.DOTALL)
print x
我也是Perler,在Perl中我们可以这样写:
$Line =~ s/,[\t ]*(\x0d?\x0a)/,$1/g;
当我移植Perl脚本Python时,我没有意识到差异