看起来这不是关于后视的第一个问题,但我找不到答案。
Javascript没有(正|负)后瞻性请求。
我需要一个与* .scss文件名匹配的正则表达式,但与* .h.scss这样的名称不匹配。 后视请求看起来像:
/(?<!(\.h))\.scss$/
我怎样才能在javascript中执行此操作? 我需要这个正则表达式用于webpack规则“test”参数,因此只需要javascript regex。
答案 0 :(得分:3)
您可以使用
/^(?!.*\.h\.scss$).*\.scss$/
请参阅regex demo
<强>详情
^
- 字符串锚的开始(?!.*\.h\.scss$)
- 如果字符串以.h.scss
结尾.*
- 尽可能多的0个字符\.scss
- 位于... .scss
子字符串
$
- 字符串的结尾。答案 1 :(得分:3)
您可以列出与'
不匹配的所有可能子模式并构建替换:
json_encode