JavaScript Regex表达式从html注释中提取数据

时间:2013-02-18 20:10:50

标签: javascript html regex

我需要提取带有Id的html评论。注释是在div上,使用JQuery $运算符并不难。但我需要的正确的RegEx字符串我无法弄明白。这是评论:

<!-- sid=FFKK12H1 -->

我需要一个分配了字符串“FFKK12H1”的JS变量。使用的语法/表达式是什么?谢谢!

编辑:

我忘记了一条非常重要的信息:代码需要在IE7上运行。不幸的是,这是我公司允许我们使用的浏览器,到目前为止,所提出的解决方案都没有在那里工作。还有其他的吗?

3 个答案:

答案 0 :(得分:2)

正则表达式为:/<!-- sid=(.+?) -->/i

var str = '<!-- sid=FFKK12H1 -->';
console.log(str.match(/<!-- sid=(.+?) -->/i)[1]);

答案 1 :(得分:0)

var content = $('#comment-containg-div').html();
var regex = /<!--\s*sid=([\x00-\x7F]+)\s*-->/;
var matches = regex.exec(content);
console.log(matches);

这里的正则表达式是一个合并的答案,包括页面上其他人所做的所有建议,看起来它是最安全的。

答案 2 :(得分:0)

var my_id = my_string.replace(/.*<!-- sid=(.*) -->.*/gi, '$1');

实施例 http://jsfiddle.net/YTdKQ/