Regex 如何查找和替换模式“)&引用;在文本文件中?
我有一个包含特殊字符的文本文件。我想用第一个数据替换第二个数据。 问题是Regex 如何查找和替换模式“)&引用;在文本文件中?,regex,python-3.x,Regex,Python 3.x,我有一个包含特殊字符的文本文件。我想用第一个数据替换第二个数据。 问题是“和”;“应该放在一起,然后替换为“firstdata”;seconddata“ 我有以下代码 import re string = open('trial.txt').read() new_str = re.sub('[);]', 'firstdata);seconddata', string) open('b.txt', 'w').write(new_str) 请建议我如何更改代码以获得正确的输出。您可以使用Pytho
“
和”;“
应该放在一起,然后替换为“firstdata”;seconddata“
我有以下代码
import re
string = open('trial.txt').read()
new_str = re.sub('[);]', 'firstdata);seconddata', string)
open('b.txt', 'w').write(new_str)
请建议我如何更改代码以获得正确的输出。您可以使用Python中内置的str.replace()方法
string = "foobar);"
string.replace(");", 'firstdata);seconddata') # -> 'foobarfirstdata);seconddata'
下面是Python中常见字符串操作的文档
这应该可以:
import re
with open("file.txt", "r") as rfile:
s = rfile.read()
rplce = re.sub('\);', "REPLACED", s)
with open("file.txt", "w") as wfile:
wfile.write(rplce)
你可以用更简单的方法
with open('input_file.txt', 'r') as input_file:
with open('output_file.txt', 'w') as output_file:
for line in input_file:
x = line.replace('findtext','replacetext')
output_file.write(x)
[);]
令人困惑。。。这是一组字符,包含两个我总是逃避的东西,没有匹配长度。。。正如@ryanmarvin指出的,您不需要一个regexp来匹配字符串。。。此正则表达式将是有效的,但“也必须是重复的[教我]
[);]
表示“一个字符可以是)
或;
”。请仔细阅读正则表达式语法。如果您在转义)
(它确实是python REs中的一个特殊字符)方面遇到问题,请仔细阅读转义。避免逃避问题的可能解决方案:[)]代码>