试着做一些简单的事情: 我有一行文本文件,我知道确切的格式。一行有六个整数,用空格隔开。在
例如:
line = '78 170 180 1 2 3'
我要做的是用另一个数字代替第四个数字。此替换作为变量传递(即,未知且未硬编码):
^{pr2}$所以,我想要一段代码,比如:
newline = re.sub(r'\d+\s\d+\s\d+\s(\d+)\s\d+\s\d+\s',num_replace_str,line)
这将产生如下结果:
print newline
78 170 180 50 2 3
我只想用字符串num_replace_str(在本例中num_replace_str='50')替换第4个数字,我已经尝试过分组()。在
似乎您可以将字符串拆分,插入新值并将其
' '.join
放回一起。在示例:
^{pr2}$这并不是说它不能保存连续的空格。如果这是一个关键要求,那么regex可能是一个更好的选择。在
您需要对要保留的行部分使用捕获组,而不是要替换的部分。然后通过使用
\n
复制第n
个组的匹配,将它们复制到替换字符串中。在您可以使用positive lookahead assertion。在
通过外部
^{pr2}$regex
模块相关问题 更多 >
编程相关推荐