JavaScript匹配使用正则表达式

时间:2014-03-07 02:48:19

标签: javascript regex

我正在尝试从大字符串中提取一些数据,我想知道是否可以使用regexp。目前,我正在使用javascript。例如:

This is some [example] text for my javascript [regexp] [lack] of knowledge.

使用此字符串,我想生成一个JSON数组,其中包含方括号之间的文本。

example, regexp, lack

我希望有人可以帮助我以简单的方式做到这一点,这样我就能理解它是如何运作的。预先感谢您的帮助。丹尼尔!

3 个答案:

答案 0 :(得分:4)

var str = "This is some [example] text for my javascript [regexp] [lack] of knowledge."
var regex = /\[(.*?)\]/g, result, indices = [];
while ( (result = regex.exec(str)) ) {
    indices.push(result[1]);
}

答案 1 :(得分:2)

var text = 'some [example] text for my javascript [regexp] [lack] of knowledge.';
text.match(/\[(.*?)\]/g).map(function(m) {
    return m.substr(1, m.length - 2);
})
// => ["example", "regexp", "lack"]

答案 2 :(得分:1)

http://jsfiddle.net/mE7EQ/

我快速写了一篇,如果您有任何疑问,请告诉我!

var a = 'This is some [example] text for my javascript [regexp] [lack] of knowledge.'
var results = a.match(/\[\w*\]/g);

alert(results[0] + ' ' + results[1] + ' ' + results[2]);