我使用什么正则表达式将某些模块列入白名单?

时间:2019-07-15 18:48:16

标签: regex ace-editor

我正在做一个自定义文本编辑器,我想编写一个正则表达式来标记已列入白名单的javascript中的所有导入/模块。例如,我希望可以导入断言或加密或什至两者都可以。我也想考虑别名,使用“ import”和“ require”导入。我正在使用使用正则表达式的Ace编辑器来编写新规则。

我正在使用RegEx弄乱,但我不太明白。这是我到目前为止的内容:

"^import (?!(?:assert|crypto)\s*;*$)\w+"

1 个答案:

答案 0 :(得分:0)

我不确定您期望的输出是什么,猜测您可能试图设计类似于以下内容的表达式:

^import(?!\s+(\bassert\b|\bcrypto\b)).*;\s*$

演示

如果要浏览/简化/修改该表达式,请在this demo的右上角进行解释。

RegEx电路

jex.im可视化正则表达式:

enter image description here