【问题标题】:Lowercase RegEx URL小写正则表达式 URL
【发布时间】:2020-02-19 00:17:41
【问题描述】:

有人可以写一个可以匹配的正则表达式吗:

  • 只能包含 a-z 字母的小写 URL,
  • 0-9 数字和-
  • http://(不需要 https),
  • www.
  • 没有default.aspx?

这是一个正则表达式必须匹配的 URL:

http://www.somedomain.net/news/148/some-text-to-act-as-news-title.aspx

http://subdomain.somedomain.net/news/148/some-text-to-act-as-news-title.aspx(没有www.)。

这是我的尝试:[a-z0-9]{1,}-*。仅匹配单个单词、带有- 的单词和数字。

【问题讨论】:

    标签: regex


    【解决方案1】:

    具有前瞻性断言的解决方案:

    ^http://[a-z0-9-.]+(?:(?!/default\.aspx)/[a-z0-9-.]+)*$
    

    【讨论】:

      【解决方案2】:
      ^http://((?!default\.aspx)[a-z0-9\-\./])*$
      

      【讨论】:

        【解决方案3】:
        ^http://[a-z0-9.-]+\.[a-z0-9]+(/(?!.*default\.aspx)[a-z0-9./-]+)?$
        

        【讨论】:

          【解决方案4】:

          您应该使用您的本地语言排除具有大写字母和 default.aspx 的网址。但如果你想要所有东西,但帽子会这样做。

          [a-z/- 0-9]*
          

          【讨论】:

          • regex 的一般规则是,如果您有一个本地语言的搜索功能,可以轻松完成某些事情,它通常比 regex 更快。如果您只想说“如果它有 UC 字符,请跳过此行”,在 NL 中很可能会更快。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-04-01
          • 2018-12-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多