我想在我的JavaScript项目中找到所有唯一的字符串。我正在使用WebStorm进行搜索,而我的搜索条件如下:
'.*' // any number of quoted characters
这确实使我获得了项目中的所有字符串,但我想排除一些字符串,但不确定如何做。
我得到了要排除的import
和require
之类的结果:
const _ = require('lodash');
和
import React from 'react';
我可以输入什么搜索内容来排除搜索结果?
答案 0 :(得分:1)
尝试进行否定的前瞻:(?!require)(?!import)('.*')
似乎产生了我想要的结果
答案 1 :(得分:1)
我认为您在答案(?!require)(?!import)('.*')
中发布的正则表达式不起作用:
const tests = [
"const _ = require('lodash');",
"import React from 'react';",
"some other 'string'"
];
tests.forEach(test => {
console.log(/(?!require)(?!import)('.*')/.test(test));
});
背后的负面印象:
const tests = [
"const _ = require('lodash');",
"import React from 'react';",
"some other 'string'"
];
tests.forEach(test => {
console.log(/(?<!(require|import).*)'.+'/.test(test));
});
注意事项:我认为当前仅在Chrome中支持负向后看