regex - 如果在字符串中找到 2 个不同的子字符串中的任何一个,Adobe CQ5 正则表达式将拒绝整个字符串

标签 regex dialog editor adobe aem

Adobe CQ5 对话框编辑器,正则表达式属性:

我受到正则表达式的挑战,所以请原谅我,但这似乎是一项简单的任务,我似乎无法在互联网上的其他地方找到合适的选择。每一个看起来正确的建议似乎都不适用于 adobe 的正则表达式领域。

我希望内容管理员提供“谢谢”页面的相对 URL。我不需要任何 super 花哨的东西,我只是想在管理员提供的文本中的任何位置找到“http”或“.com”时拒绝管理员的输入。

Examples for admin supplied input:
URL                                       REGEX VALIDATES INPUT AS SUCCESS?
http://www.domain.com/questions           No. string has both "http" and ".com"
https://www.domain.com/mail               No. string has both "http" and ".com"
https://www.domain.net                    No. string has "http"
oopshttp://www.domain.net                 No. string has "http"
www.domain.com/mail                       No. string has ".com"
/subdomain/thankyou.html                  YES! string has neither "http" or ".com"

理想情况下,拒绝“http”和“.com”将补充我目前拥有的内容:该字符串必须以正斜杠“/”开头并以“.html”结尾,即:

/^\/.+?\.html$/

感谢任何帮助,提前谢谢

最佳答案

^/.+\.html$ 应该可以正常工作。

尸检:

  • ^ 开头必须与接下来的内容匹配:
  • / 文字斜杠(如果您的修饰符是斜杠,则需要将其转义为 \/)
  • .+ 尽可能匹配(任何字符 1 到无限次)
  • \.html 文字字符串 .html
  • $ 结束必须在这里

Regular expression visualization

Debuggex Demo

关于regex - 如果在字符串中找到 2 个不同的子字符串中的任何一个,Adobe CQ5 正则表达式将拒绝整个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22723176/

相关文章:

java - 找不到Matcher中的错误,未封闭的字符类

python - 识别 U+10FFFF 以上的代码点

javascript - 从日历上的点击日期开始在 md-dialog 中显示事件

emacs - GNU Emacs : skeleton-mode, 还在使用吗?

regex - pyspark 不支持正则表达式

regex - Url Rewrite HTTPS -> HTTP 特定页面除外 (IIS 7)

javascript - jquery 对话框 - 替换对话框元素

ios - Swift 4 中的模态弹出窗口

typescript - 去掉 Vscode 的 inline window on cmd click 直接导航到 code

VIM:如何从左侧 NerdTree 面板以 vsplit 方式打开右侧文件?