正则表达式匹配第一个和唯一的字符/符号

时间:2017-08-01 04:33:30

标签: javascript regex

我正试图在"123"

中获得"123" => "abc"

我的正则表达式 /\".*\"/g

某种程度上这不起作用,它抓住了最后的"

4 个答案:

答案 0 :(得分:0)

像这样的东西可能会起作用:

var pat = "(\\\".*\\\")\\s=>.*" ;
var rex = new RegExp( pat, "gim" ) ;
var rep = "$1" ;
var res = txt.replace( rex, rep ) ;
console.log( res ) ;

<强>输出

"123"

源字符串为var txt ...

答案 1 :(得分:0)

使用以下正则表达式并获得第一个匹配:

\".*?\"

  

*?量词 - 在零和无限次之间匹配,尽可能少,根据需要进行扩展

示例:https://regex101.com/r/yBFSEO/1/

注意:第一场比赛将返回比赛字符串的左侧。

答案 2 :(得分:0)

尝试 .*?(\"\d{3}\")

<强> https://regex101.com/r/C70DL9/3

  

enter image description here

enter image description here

或者你可以

.*?(\"\d{3}\")? 和替换 $1

enter image description here

答案 3 :(得分:0)

试试这个:

^ \ “*?\”

你需要用^来断言行的开头。然后添加一个惰性量词