regexp dangling meta character near index 0

时间:2015-07-22 01:51:14

标签: java regex hive

我在hive中遇到了regexp函数的一些问题。 我希望在列表示例中找到顶级域名:

www.whatever.com
www.iam.com.uk
mobile.who.com.us

在这种情况下,我应该得到" whatever, iam, who"的结果所以我选择反向观察,并写出正则表达式:

*\.([a-z]+)\.([a-z]+)+(\.[a-z]+)?$

意味着我只想查看网址中的最后2或3项。 但它返回了一个悬空错误。 任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:0)

您似乎希望始终获得该网址的第二部分。那么为什么不直接这样做呢?

[a-z]+?\.([a-z]+)?\.
  1. 这会懒洋洋地检查一个或多个字符。
  2. 然后是.点。
  3. 然后它会懒散地捕获1个或多个字符,直到点。
  4. DEMO