如何在正则表达式中的特定单词之后捕获单词,我必须选择从 - 到之间的所有内容,之后将会有两个捕获组。
实施例:
"从伦敦到圣彼得堡"我想从字符串上面提取London
Saint Petersburg
。
我坚持使用此代码,我当前的正则表达式选择to Saint Petersburg
我希望从选择中删除单词from
和to
。
/(?=to)(.*)/i
答案 0 :(得分:7)
您可以捕获所需的两个组,然后使用match
提取它们:
s = "From London to Saint Petersburg"
console.log(
s.match(/From (.*?) to (.*)/).slice(1,3)
)
答案 1 :(得分:3)
您可以使用split()
并使用/From | to /
,它将返回包含拆分值的数组
var str = "From London to Saint Petersburg";
var arr = str.split(/from | to /ig);
console.log(arr);
答案 2 :(得分:0)
以下是您要求的示例代码:
<html>
<head>
</head>
<body>
</body>
<script>
var strIn = "From London to Saint Petersburg";
var regEx = /^From\s(.+?)\sto\s(.+?)$/;
var arrResult = regEx.exec(strIn);
var strOut = "Original:" + strIn + "<br>Result:<br>";
strOut += "1. " + arrResult[1] + "<br>";
strOut += "2. " + arrResult[2];
document.write(strOut);
</script>
</html>
将其放入文档中。用浏览器打开它。结果如下:
Original:From London to Saint Petersburg Result: 1. London 2. Saint Petersburg
希望它有所帮助!