javascript - 使用javascript获取所有表格行

标签 javascript html regex parsing

我有一个 HTML 字符串,想要获取所有 tr 的内部 html。过去我在 JavaScript 中使用 jQuery 来完成此操作,但现在我使用 Appcelerator,并且在那里不可能使用 DOM。 我有一个适用于 php 的正则表达式,但我不知道如何在 JS 中使用它。 有谁知道如何在 JS 中使用这个正则表达式或有其他解决方案。

php 正则表达式:

preg_match_all("#\<tr\>(.+?)\<\/tr\>#s", $html, $match);

最佳答案

我会做这样的事情(未经测试):

var rowColArray = [], //2D format - first key will be row, second will be column
rowStrings.match(/<tr[^>]*>([^<]*)<\/tr>/ig),
i = rowStrings.length;

while(i--){
    rowColArray[i] = rowStrings.match(/<td[^>]*>([^<]*)<\/td>/ig)
}

注意 [^>]* 和类似内容的使用:

这就像说“匹配 0 个或多个不是 '>' 的内容”,并且比比较每个字符 '.' 快得多。可以代表直到建立匹配。使用“.”的唯一原因正则表达式中的通配符是为了找到它不代表的真正古老的模糊空白字符。对于处理大型表的愚蠢浏览器正则表达式引擎来说,这实际上可能会产生相当大的差异。

关于javascript - 使用javascript获取所有表格行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10463985/

相关文章:

javascript - 如何在传单上放置带有 geojson 的数字标记

javascript - 如果选择一个复选框取消选择所有其他

Java - 获取两个 # # 符号之间的值时出现问题(匹配模式)

javascript - Liferay 6.2 - 从客户端加载 portlet

javascript - AmChart x 轴数据日期格式以显示每天的值(小时、分钟和秒)

html - 将 CSS 中的标题与 Logo 图像对齐

python过滤字符串以返回列表

javascript - 替换两个项目之间的字符串

javascript - 正则表达式,如果前面没有符号则获取序列

html - 使用 CSS 将整个页面居中