用引号匹配标题中的任何内容,无论它是否有斜杠

match anything in a title in quotes whether it has a slash or not

本文关键字:是否 任何内 标题      更新时间:2023-09-26

试图想出一个正则表达式来匹配标题。

所以说我的字符串是这样定义的:

var str = 'title="one"';
var str1 = 'title="one/third"';

我希望能够在标题的引号中间获取内容。

例如,如果我在 str 上运行正则表达式,结果将是:

如果我在 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'/]+))';

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

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

/"(.+)"/.exec('title="one/third"')

或者,如果您的字符串处于该特定模式中,则可以将不需要的部分替换为空字符串:

'title="one/third"'.replace(/^title="|"$/g, '')
相关文章: