gpt4 book ai didi

ruby-on-rails - 原始字符串 REXML 解析中的非法字符 '&'

转载 作者:数据小太阳 更新时间:2023-10-29 08:23:37 25 4
gpt4 key购买 nike

您好,我正在尝试使用 REXML 解析 XML 文件....当我的 XML 文件中有非法字符时...此时它就失败了。

那么有什么方法可以替换或删除这些字符吗?

无法解析并出现错误 Illegal character '&' in raw string REXML parsing

<head> Negative test for underlying BJSPRICEENG N4&N5
</head>


doc = REXML::Document.new(File.open(file_name,"r:iso-8859-1:utf-8"))

testfile.elements["head"].text





doc = REXML::Document.new(content)
dir_path = doc.elements["TestBed/TestDir"].attributes["path"].to_s
doc.elements.each("TestBed/TestDir") do |directory|
directory.elements.each("file") do |testfile|

t= testfile.elements["head"].text

end
end
end




<file name="toptstocksensbybjs.m">
<MCheck></MCheck>
<TestExtension></TestExtension>
<TestType></TestType>


<fcn name="lvlTwoDocExample" linenumber="20">
<head> P1><&
</head>

</fcn>

</file>

最佳答案

对于你的情况,删除非法&字符,你可以试试:

content = File.open(file_name,"r:iso-8859-1:utf-8").read
content.gsub!(/&(?!(?:amp|lt|gt|quot|apos);)/, '&amp;')
doc = REXML::Document.new(content)

但是,对于那些其他非法字符,尤其是那些不成对的< , > , '" , 难度会大很多。

关于ruby-on-rails - 原始字符串 REXML 解析中的非法字符 '&',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17237334/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com