繁体   English   中英

如何创建Regexp查找JS文件(或JSON)中的所有字符串

[英]How to create a Regexp To find all strings in JS files (or JSON)

我试图提取js文件中的所有字符串。 (在sublime文本中使用正则表达式“在所有文件中搜索”)

例如,这是一个文本文件:

a='string1'
b='string2'
c="string3"
alert("string\"4")
alert('string\'5')

所以,我有这个RegExp:

/('.*?')|(".*?")/

我发现了这个:

['string1'].['string2',"string3"]

但我还需要:

["string4","string5"]

我怎么做的?

(我正在寻找RegExp解决方案 - 一个RegExp句子)

还有一件事:最好的解决方案是,如果它也可能忽略文件中的所有JS注释。 (在评论中不提取JS字符串)

谢谢。

你可以试试下面的正则表达式。

(['"])(?:\\\1|(?!\1).)*?\1

DEMO

  • (['"])捕获'"引号并将其存储到组索引1中。
  • (?:\\\\\\1|(?!\\1).)这允许转义字符( 由组索引1捕获的字符 )。 或者不是捕获的角色零次或多次。
  • \\1它必须以组索引1捕获的字符结束。
  • 它还匹配字符串,如"string'5'"'string"5"'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM