【问题标题】:Extract especific URL from String in java从java中的String中提取特定的URL
【发布时间】:2018-04-16 20:26:54
【问题描述】:

我有一个这样的字符串:

.......e1.whatsapp.net........>.ns1.p13.dynect..hostmaster.whatsapp.com.x:a> ....X..:....

我需要提取第一个网址:

e1.whatsapp.net

我正在尝试this post 中的解决方案,但对我不起作用,可能是因为点的数量。也许如果我尝试使用另一种模式正则表达式,但我对“正则表达式”一无所知。

有什么建议吗?

【问题讨论】:

  • 那为什么不开始学习正则表达式呢?
  • hostmaster.whatsapp.com 也是 URL。您的网址有什么模式吗?
  • 尝试用一些不在正则表达式中的字符(如>)临时替换>1个点(.)并应用相同的正则表达式删除\\b(https?|ftp|file)://,因为您的网址没有https等地址之前。
  • pattern 可以是任何类型的 URL,例如:www.google.com、stackoverflow.com、github.com、asdf.ru 等。最重要的是分隔域和主机。

标签: java string url


【解决方案1】:

下面的代码可以帮助您使用正则表达式提取电子邮件。

class StringSeperator {

  public static void main(String args[]){
    String urlString = ".........e1.whatsapp.net..............>.ns1.p13.dynect..hostmaster.whatsapp.com.x:a>.......X..:....";
    String array[] = urlString.split("\\.\\.+"); 
    System.out.println(array[1]);
  }
}

这里我使用正则表达式作为\\.\\.+,这意味着两个或多个点。使用两个或多个点分割字符串。

如果我进一步解释正则表达式。在这里,我使用\\. 来描述点,并使用+ 来表示一个或多个点的出现。有关 Java 正则表达式的更多详细信息,请点击以下链接。

https://www.tutorialspoint.com/java/java_regular_expressions.htm

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-18
    • 1970-01-01
    相关资源
    最近更新 更多