对于JavaScript,如何使用正则表达式从方括号中提取内容? 例如:
var str ='1.2.3.4 - - [01/Dec/2011:11:14:42 -0800]'
var result = str.match('\[.?*\]');
即使使用'\[.?*\]'
\ [ \ ]
对我也不起作用
谢谢!
答案 0 :(得分:2)
试试这个:
var myregexp = /\[(.*?)\]/;
var match = myregexp.exec(subject);
if (match != null) {
result = match[1];
}
[]
的内容将由反引用$1
捕获。在进行此类提取时,请使用 lazy quantifier 。否则,如果您有两组括号:
[asdfjhasdf][asdfafas]
您只能从第一个[
到最后一个]
答案 1 :(得分:1)
\[(.*)\]
效果很好,不要在\
之后和[
之前使用空格,例如。 \ [
因为这不会那样。
答案 2 :(得分:1)