我有一串带有一堆中断标记的字符串。
不幸的是,它们是不规则的。
<Br> <BR> <br/> <BR/> <br />等...
我正在使用nokogiri,但我不知道如何告诉它在每个break标签处断开字符串……
谢谢。
发布于 2009-09-21 19:15:51
所以要实现iftrue的响应:
a = 'a<Br>b<BR>c<br/>d<BR/>e<br />f'
a.split(/<\s*[Bb][Rr]\s*\/*>/)
=> ["a", "b", "c", "d", "e", "f"]...只剩下一个由HTML换行之间的字符串位组成的数组。
发布于 2009-09-21 18:57:50
如果可以在正则表达式上中断,请使用以下分隔符:
<\s*[Bb][Rr]\s*\/*>解释:
一个左尖括号、零个或多个空格、b或b、r或r、零个或多个空格、零个或多个正斜杠。
要使用正则表达式,请看这里:
http://www.regular-expressions.info/ruby.html
发布于 2009-09-22 13:42:54
Pesto的99%的方法,然而,Nokogiri支持创建一个不包装声明中的文本的文档片段:
text = Nokogiri::HTML::DocumentFragment.parse('<Br>this<BR>is<br/>a<BR/>text<br />string').children.select {|n| n.text? and n.content }
puts text
# >> this
# >> is
# >> a
# >> text
# >> stringhttps://stackoverflow.com/questions/1456190
复制相似问题