我有一个HTML页面:
<strong>
Product Name:
</strong>
我想删除空行(^\n
或^$
)。预期的HTML是:
<strong>
Product Name:
</strong>
这是我的语法:
r.gsub!(/^\\n/, '')
它似乎不起作用。我尝试了很多组合,我无法做任何事情。 puts r.class => string
和r
始终包含空格。我实际上尝试了更多的减少:
r.gsub!(/\\n\s+?/, '').gsub!(/\\t\s+?/, '').gsub!(/^\\n/, '')
答案 0 :(得分:2)
问题似乎是当你不应该逃避反斜杠时。例如。 /\\n/
将匹配字符串\n
,而不是换行符。 /\n/
将匹配换行符。同样适用于\t
。
如果您想使用Ruby正则表达式,我建议您查看Rubular。
另外,请注意gsub!
,尤其要将它们链接起来。如果没有替换任何内容,gsub!
将返回nil
,并且您将在后续调用中获得未定义的nil错误方法。
r = r.gsub(...).gsub(...) ...
答案 1 :(得分:1)
我得到了它的工作。
r = r.gsub(/\t\s+?/, "")
r = r.gsub(/^\s*$/, "")
"\n"
可以\s*
封装$
。 \n
并不代表{{1}}。