ruby - 获取一串 html、将其切碎并将每一部分放入一个数组中的最佳方法是什么?

标签 ruby regex arrays text-processing

我对如何执行此操作有大致的了解,但无法确定具体如何完成。我相信它可以用某种正则表达式来完成。想知道这里是否有人能指出我正确的方向。

如果我有一串这样的html

some_html = '<div><b>This is some BOLD text</b></div>'

我想把它分成逻辑部分,然后将这些部分放入一个数组中,这样我就可以得到这样的结果

html_array = ["<div>", "<b>", "This is some BOLD text", "</b>","</div>" ]

最佳答案

我不使用正则表达式,而是使用 nokogiri gem(由 Aaron Patterson 编写的用于解析 html 的 gem - Rails 和 Ruby 的贡献者)。以下是如何使用它的示例:

html_doc = Nokogiri::HTML("<html><body><h1>Mr. Belvedere Fan Club</h1></body></html>")

然后您可以调用 html_doc.children 来获取 nodeset并从那里开始工作

html_doc.children  # returns a nodeset

关于ruby - 获取一串 html、将其切碎并将每一部分放入一个数组中的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7886326/

相关文章:

java - 查找数组中的非重复元素

ruby - 什么是提取单词和标点符号但忽略小数和数字的正则表达式?

Ruby 正则表达式多次重复捕获

c++ - 正则表达式替换两个匹配项之间的所有匹配项

json - Node : reading a big csv file

objective-c - RegEx .+ 不包括空格和换行符

java - 需要帮助在 Java 中不使用 0 的情况下使用随机数 1-10 填充数组

ruby - 我可以使用 Hpricot 查找任何/大多数网站的主要文章文本吗?

c# - 类似于 C# 的 ERB 库

javascript - 如何根据索引获取由两个新行分隔的字符串?