regex - 使用 Tuckey URL Rewrite 添加文件扩展名

标签 regex tomcat tuckey-urlrewrite-filter

我正在使用 tuckey url 重写过滤器,我想将语言扩展名 (.cfm) 添加到干净的 url。 (我知道我假设路径中的最后一个词始终是脚本。)

比如我想把.cfm加到

/someScript
/module/employee/anotherScript

并且显然不是已经具有扩展名的路径(定义为具有句点)

/someScript.cfm
/module/employee/anotherScript.cfm

这是我想到的正则表达式规则:

<rule>
    <from>^((?!\.)[\w/])*$</from>
    <to type="redirect" last="true" qsappend="true">$0.cfm</to>
</rule>

问题来了。我还想允许一个可选的尾部斜杠,以便删除斜杠并添加文件扩展名。

/someScript/
/module/employee/anotherScript/

如何重写我的正则表达式规则以忽略可选的尾部斜线?

最佳答案

^((?:(?!\.)[\w\/])*?)\/?$

试试这个。查看演示。替换为 $1.cfm

https://regex101.com/r/fA6wE2/6

关于regex - 使用 Tuckey URL Rewrite 添加文件扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27920218/

相关文章:

regex - 在 SED 中转义正则表达式

c# - 使用正则表达式 c# 从字符串中删除连续的 <br>

tomcat - Jruby On Rails 应用程序在使用 Warble 进行 WAR 时在 Tomcat 上给出 LocalJumpError

Tomcat 弹性与 Tomcat 和 Microsoft Azure

java - URLrewrite 过滤器中的过滤器链

JavaScript 使用 Lookahead 匹配多行中的相似模式

javascript - 捕获多次出现的 javascript 正则表达式

tomcat - 取消部署 Tomcat Web 应用程序时如何防止文件锁定?

javascript - 使用 URLRewriteFilter 未加载 CSS 和 JS

java - Tuckey UrlRewrite 中的正则表达式