我正在寻找一种从字符串中删除一组不同数字的方法。
我有多个风格=""我在渲染API时要删除的标记。
即
< img src =" https://IMAGE.jpg" style =" width:1398px;"数据状态=" OK">
< img src =" https://IMAGE.jpg" style =" width:1393px;"数据状态=" OK">
< img src =" https://IMAGE.jpg" style =" width:1385px;"数据状态=" OK">
我想删除样式=""标签,我正在寻找一个gsub或正则表达式方法来做到这一点。
有些事情。
.gsub(&#39; style =&#34; width:**** px;&#34;&#39;,&#39;&#39;) < / p>
****是每个数字的任何数字0..9的解决方案吗?
答案 0 :(得分:2)
虽然您可能不希望使用正则表达式执行此操作,但 hack 执行此操作的方式是:
gsub(/style="width:\s*\d+px;?"\s*/, '')
此处的密钥为\d+
,表示一位或多位。
更好的方法是使用像Nokogiri这样的HTML解析器来删除属性:
doc = Nokogiri::HTML(source)
doc.css('img').each do |img|
img.remove_attr('style')
end
doc.to_s
还有stripping all style tags的方式。