我正在创建一个用户可以向数据库添加文本的网站,我正在尝试编写一些代码,将删除任何已在文本中写入的URL。它必须能够找到所有前缀(www。,“无”http://)和所有后缀(.com,.co.uk,.de)。我知道这是一项艰巨的任务,因为网址可以通过各种方式提供,因此我在这里要求任何建议。以下是用户可以隐藏网址的一些示例(如果您有任何其他网站,请添加任意内容)。感谢
www.google.com
www.google.co.uk
www.google.de
W | W | W |。| G | O | O | G |升| E |。| C | O | M
答案 0 :(得分:1)
您可以设置正则表达式来查找已知变体,但是制作一个能够捕获用户可以投入的任何变体的算法是不可能的。如果你想打这场战斗,它将会持续进行,因为有意绕过你的系统的人会找到一种方法。
这并不意味着一切都没有希望。您可以开始禁止执行此类操作的用户。您还可以强制每个人成为一个能够执行的用户。禁止某些IP也是一种选择。这仍然不会阻止持久的gnat,但是寻求100%的解决方案是昂贵的。
此要求的背景是什么?