JavaScript RegEx新手-从三个单词字符串中选择中间单词

New to JavaScript RegEx - Selecting Middle Word from Three-Word String

本文关键字:单词 三个 字符串 中间 选择 新手 RegEx JavaScript      更新时间:2023-09-26

我是JavaScript的RegExp库的新手,需要帮助从三个单词的字符串中选择中间单词
例如:则CCD_ 1将返回CCD_。

我(微弱的)尝试是's.*'s,但这返回了(space)October(space)。但是,我需要在匹配中省略空格。

感谢您的帮助!

感谢

您可以简单地使用一个捕获组,然后引用组索引#1来获得匹配结果。

var r = 'Saturday October 1'.match(/'s(.*)'s/);
if (r)
    console.log(r[1]); //=> "October"

或者,如注释中所述,修剪匹配结果。

var r = 'Saturday October 1'.match(/'s.*'s/);
if (r)
    console.log(r[0].trim()); //=> "October"

但是在这种情况下,split处理字符串不是更容易吗?

var r = 'Saturday October 1'.split(' ')[1];
console.log(r); //=> "October"
^.*?'s('w+)

试试这个。抓住捕获物。请参阅演示。

http://regex101.com/r/hQ1rP0/44

我认为最简单的解决方案是修剪返回值或

var match = 'Saturday October 1'.match(/'s(.*)'s/); 
var text = match && match[1]

使用第一个匹配组来获得中间单词

's+('b.*)'s+