特定单词

时间:2017-07-20 17:47:04

标签: regex

有一点RegEx大脑放屁,如果有人有空的话,可以用某种帮助吗?

我想在域名后面找到URL的所有单词。

例如:

  

http://www.bbc.co.uk/programmes/b08y26qp

应该返回:programmesb08y26qp

我到目前为止:

[a-z][a-z0-9]*

但我如何才有资格在http://www.bbc.co.uk/之后开始返回单词?

非常感谢!

2 个答案:

答案 0 :(得分:1)

您只需将http://www.bbc.co.uk/作为字符串文字添加到正则表达式中。您还应该使用字符串start anchor(^)来减少失败匹配的工作(^http:\/\/www\.bbc\.co\.uk\/

在线

您可以转到https://regex101.com/,只需在每个(非灰色)突出显示的字符前添加\,直到整个正则表达式只有灰色高光。

爪哇

在Java中,只需让Pattern.quote(string)Matcher.quoteReplacement(string)为您进行转义。

当然,如果你有一种编程语言,那么这样的东西会更好。 urlString.substring("http://www.bbc.co.uk/".length()+1).split("/")

答案 1 :(得分:1)

使用$将正则表达式绑定到行尾。在这种情况下,开头的事情确实很重要。

使用()您可以指定群组。这样可以轻松检索结果。

此正则表达式适用于http://www.bbc.co.uk/programmes/b08y26qp

([A-Za-z0-9]+)\/([A-Za-z0-9]+)$

结果:

  

第1组:计划
  第2组:b08y26qp

在正则表达式101中查看此示例:https://regex101.com/r/YkUHk5/1/