Javascript 正则表达式-在引号中匹配标题中的任何内容,无论它是否有斜杠

Javascript 正则表达式-在引号中匹配标题中的任何内容,无论它是否有斜杠,javascript,regex,Javascript,Regex,试图用正则表达式来匹配标题 假设我的字符串定义如下: var str = 'title="one"'; var str1 = 'title="one/third"'; 我希望能够在标题中引用中间的东西。 例如,如果我在str上运行regex,结果将是: 一个 如果我在str1上运行它,结果将是: 三分之一 目前我有: var re1='(title)'; var re2='(=)'; var re3='(")'; var re4='((?:[a-z][a-z]+))'; var re5='("

试图用正则表达式来匹配标题

假设我的字符串定义如下:

var str = 'title="one"';
var str1 = 'title="one/third"';
我希望能够在标题中引用中间的东西。

例如,如果我在str上运行regex,结果将是:

一个

如果我在str1上运行它,结果将是:

三分之一

目前我有:

var re1='(title)';
var re2='(=)';
var re3='(")';
var re4='((?:[a-z][a-z]+))';
var re5='(")';
var p = new RegExp(re1+re2+re3+re4+re5,["i"]);
var m = p.exec(str);
var n = p.exec(str1);
//Works!
console.log(m);
//Does Not Work!
consoloe.log(n);
试试这个。抓取捕获或组

在代码中,var re4='?:[a-z][a-z]+'只匹配小写字母,因此/失败

此正则表达式捕获引号之间的内容:

/"(.+)"/.exec('title="one/third"')
或者,如果您的字符串处于该特定模式中,您可以用空字符串替换不需要的部分:

'title="one/third"'.replace(/^title="|"$/g, '')
/"(.+)"/.exec('title="one/third"')
'title="one/third"'.replace(/^title="|"$/g, '')