包含不以.com /.net /等结尾的内网站点的正则表达式
本文关键字:网站 站点 正则表达式 com net 包含不 结尾 | 更新日期: 2023-09-27 17:52:52
我正在使用regexlib来提出一个正则表达式来从字符串中获取url。
到目前为止,我有以下内容:
message = Regex.Replace(message, @"((http|ftp|https):'/'/['w'-_]+('.['w'-_]+)+
(['w'-'.,@?^=%&:/~'+#]*['w'-'@?^=%&/~'+#])?)", "<a target='_blank'
href='$1'>$1</a>");
这似乎很准确,但在两件事上失败了:
- 我不能让它识别url,如果它的形式是
www.yahoo.com
- 我不能让它工作的内部网网站,所以像
http://mysite/Views/Issues/ListView.aspx
不链接:(
我讨厌正则表达式,真的需要一些帮助。
如何:
编辑:resultString = Regex.Replace(subjectString, @"('b(?:(?:(?:https?|ftp|file)://|www'.|ftp'.)[-A-Z0-9+&@#/%?=~_|$!:,.;]*[-A-Z0-9+&@#/%=~_|$]|((?:mailto:)?[A-Z0-9._%+-]+@[A-Z0-9._%-]+'.[A-Z]{2,6})'b)|""(?:(?:https?|ftp|file)://|www'.|ftp'.)[^""'r'n]+""|'(?:(?:https?|ftp|file)://|www'.|ftp'.)[^''r'n]+')", "$1", RegexOptions.IgnoreCase | RegexOptions.Multiline);