【问题标题】:Extract text from enclosing parentheses using JavaScript [duplicate]使用JavaScript从括号中提取文本[重复]
【发布时间】:2020-09-26 20:34:40
【问题描述】:

我有一个类似Manila (Philippines) 的字符串,并且只想用子字符串Philippines 替换它。我尝试使用以下正则表达式模式,它适用于 Notepad++:

[^\(]+ \(([^\)]+)\)

但是,我在 JavaScript 中得到了 undefined 结果:

var x = "Manila (Philippines)";
console.log(x.replace(/[^\(]+ \(([^\)]+)\)/,$1));

【问题讨论】:

    标签: javascript regex


    【解决方案1】:

    您只是忘记了替换模式周围的"

    console.log(x.replace(/[^\(]+ \(([^\)]+)\)/,"$1")); 将正常工作!

    【讨论】:

    • 我试过了,但/$1/ 周围的斜线也包含在结果中,例如/Philippines/
    • 对不起,我用"更新并测试了答案!
    【解决方案2】:

    你可以使用.match():

    var x = "Manila (Philippines)";
    var result = x.match(/\((.+)\)/).pop();
    //              regex for string contained in parentheses
    
    console.log(result);

    【讨论】:

      猜你喜欢
      • 2013-06-29
      • 2016-10-22
      • 1970-01-01
      • 2018-02-11
      • 1970-01-01
      • 1970-01-01
      • 2017-03-20
      • 2022-01-16
      • 2013-01-03
      相关资源
      最近更新 更多