Avd*_*ept 2 html ruby regex ruby-on-rails
我正在使用strip_tags从我的字符串中删除所有标签的方法,但是在删除了一些缺少空格的文本之后,特别是在1个标签结束而另一个标签开始的情况下.有没有办法在删除标签的地方插入空格?寻找前.下面
str
=> "<span>Class GOesHere</span><div>SomeExtra Tag</div>"
helper.strip_tags(str)
=> "Class GOesHereSomeExtra Tag"
Run Code Online (Sandbox Code Playgroud)
我建议解析HTML并提取文本. Nokogiri,一个非常着名的宝石应该可以帮助解决这个问题:
require 'nokogiri'
=> false
> str = "<span>Class GOesHere</span><div>SomeExtra Tag</div>"
=> "<span>Class GOesHere</span><div>SomeExtra Tag</div>"
> Nokogiri::HTML(str).text
=> "Class GOesHereSomeExtra Tag"
Run Code Online (Sandbox Code Playgroud)
更新:
这将搜索html中的所有文本节点并映射文本内容.结果数组与空格分隔符连接:
> Nokogiri::HTML(str).xpath('//text()').map(&:text).join(' ')
=> "Class GOesHere SomeExtra Tag"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1805 次 |
| 最近记录: |