以下代码有效,但我想知道是否有更好的方法来实现相同的结果:
var regex = /define\((\s+)?['|"](PRIVATE_KEY)['|"],(\s+)?['|"](.*)['|"](\s+)?\)/i;
测试:
regex.test("define('PRIVATE_KEY', 'MYSECRETKEY');");
答案 0 :(得分:2)
只在MYSECRETKEY部分周围放置大括号,因为那是你要捕捉的部分。
var regex = /^define\(\s*['"]PRIVATE_KEY['"]\s*,\s*['"](.*?)['"]\s*\);$/i;
答案 1 :(得分:1)
首先我认为你不需要在字符类中使用pip(如果你只想匹配一个引用和双引号)而不是(\s+)?
你可以使用\s*
:
/define\(\s*['"](PRIVATE_KEY)['"],\s*['"](.*)['"]\s*\)/i