我尝试了以下代码来搜索字符串模式"]]>*/-->"
并将其替换为"*/-->"
usinggsub
函数。
但不是替换整个字符串。它明智地替换了字符..
File.open('reporttestphp2.xml', 'r+') do |f1|
while line = f1.gets
f1.puts line.gsub("]]>*/-->","*/-->")
end
end
如何替换 Ruby 中的整个字符串模式?
我尝试了以下代码来搜索字符串模式"]]>*/-->"
并将其替换为"*/-->"
usinggsub
函数。
但不是替换整个字符串。它明智地替换了字符..
File.open('reporttestphp2.xml', 'r+') do |f1|
while line = f1.gets
f1.puts line.gsub("]]>*/-->","*/-->")
end
end
如何替换 Ruby 中的整个字符串模式?
gsub 工作正常。您只需要以不同的方式读取文件:
text = File.read("reporttestphp2.xml").gsub("]]>*/-->","*/-->")
File.open("out.xml", "w").write(text)
我希望,这会有所帮助。
整个字符串模式是什么意思?如果你想使用正则表达式,它们在 ruby 中写成 beetween / characers,例如 /\w+/
为此,请使用 ruby 正则表达式常量,
gsub(/]]>\*\/-->/, '*/-->')