相关疑难解决方法(0)

检查字符串是否为有效URL的最佳正则表达式是什么?

如何检查给定字符串是否为有效的URL地址?

我对正则表达式的了解是基本的,不允许我从我在网上看到的数百个正则表达式中进行选择.

regex language-agnostic url

751
推荐指数
24
解决办法
38万
查看次数

如何在C#中获取当前页面的URL

任何人都可以帮助我在C#中获取ASP.NET当前工作页面的URL吗?

c# asp.net

632
推荐指数
9
解决办法
103万
查看次数

从URL获取子域

首先从URL获取子域很容易.

http://www.domain.example
Run Code Online (Sandbox Code Playgroud)

扫描第一个时间段然后返回"http://"之后的任何内容......

然后你记得

http://super.duper.domain.example
Run Code Online (Sandbox Code Playgroud)

哦.所以,你想,好吧,找到最后一个时期,回过头来获取一切!

然后你记得

http://super.duper.domain.co.uk
Run Code Online (Sandbox Code Playgroud)

而你又回到了原点.除了存储所有顶级域名列表外,任何人都有任何好主意吗?

subdomain dns url parsing

100
推荐指数
4
解决办法
4万
查看次数

检测文本字符串中的(顽皮或漂亮)URL或链接

如何检测(使用正则表达式或启发式方法)一个文本字符串中的网站链接,例如注释?

目的是防止垃圾邮件.HTML被剥离,所以我需要检测复制和粘贴的邀请. 垃圾邮件发送者发布链接应该不经济,因为大多数用户无法成功访问该页面.我想要有关最佳实践的建议,参考或讨论.

一些目标:

  • 结构良好的URL(http://some-fqdn/some/valid/path.ext)
  • URL但没有http://前缀(即有效的FQDN +有效的HTTP路径)
  • 任何其他有趣的业务

当然,我阻止垃圾邮件,但可以使用相同的过程来自动链接文本.

思路

以下是我在想的一些事情.

  • 内容是母语散文,所以我可以在检测中触发快乐
  • 我应该首先删除所有空格,以便抓住" www .example.com"吗?普通用户是否知道自己删除空间,或者做任何浏览器"做什么意思"并为你剥离它?
  • 也许多次通过是更好的策略,扫描:
    • 格式良好的网址
    • 所有非空格后跟'.' 随后是任何有效的TLD
    • 还要别的吗?

相关问题

我已经阅读了这些内容,现在它们已在此处记录,因此您可以根据需要参考这些问题中的正则表达式.

更新和摘要

哇,我在这里列出了一些非常好的启发式方法!对我来说,最好的砰砰声是以下综合:

  1. @Jon Bright检测TLD的技术(一个很好的防御性阻塞点)
  2. 对于那些可疑的字符串,请根据@capar将点替换为带点的字符
  3. 一个好看的字符是@ Sharkey的下标· (即" · ").· 也是一个单词边界,因此随便复制和粘贴更难.

这应该使垃圾邮件发送者的CPM足够低,以满足我的需求; "旗帜不合适"的用户反馈应该抓住其他任何东西.列出的其他解决方案也非常有用:

  • 剥去所有虚线四边形(@ Sharkey对自己答案的评论)
  • @ Sporkmonger对客户端Javascript的要求,它在表单中插入了一个必需的隐藏字段.
  • 对URL服务器端进行Ping操作以确定它是否是网站.(也许我可以按照@Nathan通过SpamAssassin或其他贝叶斯过滤器运行HTML ..)
  • 查看Chrome的智能地址栏来源,了解Google使用的巧妙技巧
  • 呼叫OWASP AntiSAMY或其他Web服务以进行垃圾邮件/恶意软件检测.

language-agnostic url sanitization spam-prevention

37
推荐指数
4
解决办法
7010
查看次数

正则表达式检查有效的URL是否以.jpg,.png或.gif结尾

我希望用户提交一个有效的网址,但也是一个图片,以.jpg,.png或.gif结尾.

regex url image

30
推荐指数
4
解决办法
11万
查看次数

在bash脚本中从URL中提取文件名和路径

在我的bash脚本中,我需要从给定的URL中提取路径.例如,从包含字符串的变量:

HTTP://登录:password@example.com/one/more/dir/file.exe一个=某物&B =某物

我想提取到其他变量只有:

/one/more/dir/file.exe

部分.当然登录,密码,文件名和参数是可选的.

由于我是sed和awk的新手,我请求你帮忙.拜托,建议我怎么做.谢谢!

url bash parsing

26
推荐指数
5
解决办法
5万
查看次数

来自URL的正则表达式URL路径

我有一点正则表达式的麻烦.

我想在这个网址中找到路径videoplay.

http://video.google.co.uk:80/videoplay?docid=-7246927612831078230&hl=en#hello
Run Code Online (Sandbox Code Playgroud)

如果我使用这个正则表达式/.+也匹配/video.

我需要某种反/负匹配不包括在内 //

javascript regex url node.js

12
推荐指数
4
解决办法
6万
查看次数

如何使用python从字符串中提取url?

例如:

string = "This is a link http://www.google.com"
Run Code Online (Sandbox Code Playgroud)

我怎样才能提取"http://www.google.com"?

(每个链接的格式相同,即'http://')

python string url extract

11
推荐指数
4
解决办法
2万
查看次数

如何在Javascript中完全删除字符串中的URL?

我有一个字符串,可能包含几个URL链接(http或https).我需要一个脚本,它将完全从字符串中删除所有这些URL,并返回没有它们的相同字符串.

我到目前为止尝试过:

 var url = "and I said http://fdsadfs.com/dasfsdadf/afsdasf.html";
 var protomatch = /(https?|ftp):\/\//; // NB: not '.*'
 var b = url.replace(protomatch, '');
 console.log(b);
Run Code Online (Sandbox Code Playgroud)

但这只会删除http部分并保留链接.

如何编写正确的正则表达式,它将删除http后面的所有内容,并检测字符串中的几个链接?

非常感谢!

javascript regex

10
推荐指数
1
解决办法
1万
查看次数

在某个模式之后提取子字符串

我有以下字符串:

http://xxx/Content/SiteFiles/30/32531a5d-b0b1-4a8b-9029-b48f0eb40a34/05%20%20LEISURE.mp3?&mydownloads=true
Run Code Online (Sandbox Code Playgroud)

如何在之后提取零件30/?在这种情况下,它是32531a5d-b0b1-4a8b-9029-b48f0eb40a34.我有另一个字符串具有相同的部分高达30 /并且之后每个字符串具有不同的id到下一个/我想要的.

java string split

5
推荐指数
2
解决办法
9970
查看次数