我希望使用一条语句清除URL字符串的http://www.部分。

我不是想使用正则表达式解决方案,我只是想知道是否有一种方法可以在一个单独的replace语句中替换(读取:删除)两个单词。

理想场景:

String url = "http://www.superfect.com";
String[] purge = {"http://", "www."};
url = url.replace(purge, "");


但是,这不会运行。通常用Java如何完成?

最佳答案

在一个简单的循环中执行此操作:

String purge[] = {"www.", "http://", "https://", "ftp://"};
String result = url;
for (int i = 0; i < purge.length; ++i)
{
    result = result.replace(purge[i], "");
}


现在,result字符串就是您想要的字符串。正如codesalsa所指出的,并给出了URL的上下文,您可能想要这样:

String purge[] = {"http://", "https://", "ftp://", "www."}; //order is important!
String result = url;
for (int i = 0; i < purge.length; ++i)
{
    if (result.startsWith(purge[i])
    {
        result = result.substring(purge[i].length);
    }
}

07-28 13:19