regex - Azure Verizon 使用什么正则表达式引擎?

标签 regex azure cdn azure-cdn

我使用 Verizon Premium 订阅下的终结点创建了 Azure CDN。然后,我登录到 Azure Verizon 平台,向引擎添加新规则。如果 URL 末尾没有扩展名,则会自动添加 .html。在 Azure Verizon 中,它看起来像这样: enter image description here 但是,如果将 .+\/[^\.]\w+$ 替换为 ^.*/[^/.]+$ ,它将不起作用同样不知道为什么并且没有出现验证错误。我读完this article后我怀疑这与正则表达式风格有关,但我根本不确定。

最佳答案

当您不确定所使用的正则表达式引擎时,请尝试仅使用最常见的正则表达式结构,例如 .*[... ]。因此,请尝试使用 [a-zA-Z0-9_],而不是 \w

不要转义 [...] 中的任何内容,请注意,为此,您需要将 ] 放在最初的 [ 之后(不是 ECMAScript 风格,您必须在字符类中转义 ]),- 可以放在未转义的字符类的末尾,^ 不应该出现在开头。请注意, \ 只能在 NFA 正则表达式中转义,在基于 POSIX 的正则表达式中,在方括号表达式内, \ 被解析为文字 \ 字符: POSIX 括号表达式不支持其中的正则表达式转义。在 [...] 中转义 . 是没有意义的,当以下情况时,[\.] 在 JS ES6 正则表达式中是无效模式使用 u 修饰符编译。所以,写成[^.]更安全。

正则表达式分隔符仅在某些编程语言中用于定义正则表达式,但在这样的软件中,您只处理字符串模式。因此,/ 没有任何特殊之处,不必进行转义。

所以,我会在这里使用以下正则表达式:

.+/[^.][0-9a-zA-Z_]+$

关于regex - Azure Verizon 使用什么正则表达式引擎?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53745515/

相关文章:

amazon-web-services - 强制 CloudFront 分发/文件更新

cdn - CDN 的 Amazon CloudFront 替代方案?

cdn - Amazon Cloudfront 设置以减少等待时间

c# - 正则表达式长度验证 : Ignore leading and trailing whitespaces

javascript - 在 jquery 提交函数中分配全局变量并传递给正则表达式函数

azure - SignalR:Azure 虚拟机上的 WebSockets 错误 400

azure - 在 Azure Analytics 作业中设置日期时间格式

azure - 在 Azure DevOps 中将 Docker 容器标记为最新

python - 如何使 sklearn.TfidfVectorizer 标记特殊短语?

.net - 在非捕获组内递归捕获组?