如何审查网站链接?

时间:2015-06-23 15:39:20

标签: java regex

我一直在研究正则表达式检查器,似乎无法找到一种审查地址链接的合适方式(并试图绕过它)。

这是我到目前为止所得到的,忽略了转义序列:

([a-zA-Z0-9_-]+[\\W[_]]*)+(\\.|[\\W]?|dot|\\(\\.\\)|[\\(]?dot[\\)]?)+([\\w]{2,6})((\\.|[\\W]?|dot|\\(\\.\\)|[\\(]?dot[\\)]?)([\\w]{1,4}))*

我不太确定可能导致问题的原因,但它会审查“com”和“come”这个词以及几乎任何大约3个以上字母的内容。

问题:我想知道如何审查试图绕过审查员的网站链接和无效的链接。示例:

  

Google.com

     

goo gle .com

     

g o o g l e。 c o m

     

go o gl e%com

     

go og le(。)c om

还有一点点补充,是否有可能将链接添加到白名单?谢谢。

1 个答案:

答案 0 :(得分:0)

你可以使用像这样的简单函数..

private String hideLink(String link){
    String[] split = link.split("\\.");
    String output = "";
    output += split[0] + ".";
    for(int i = 0; i < split[1].length(); i++){
        output += "*";
    }
    output +=  "." + split[2];
    return output;
}

致电

hideLink("www.google.com");

returns www。******。com

致电

hideLink("www.msn.net");

returns www。***。net

致电

hideLink("http://abc.12345.org");

returns http://abc。*****。org

等...