如何写正则式匹配css的引用链接?

Clothos 2007-02-08 11:12:18
例如下面这段js代码,怎么用正则从其中找出http://ads.sina.com/cnNews/css/cnNews.css这个链接?

browser = navigator.appName;
ie = "Microsoft Internet Explorer";
netscape = "Netscape";
os = navigator.platform;
mac = 'MacPPC'

if (browser == netscape && os != mac) {
document.write('<link rel="stylesheet" type="text/css" href="http://ads.sina.com/cnNews/css/cnNews.css" title="master">');
}
else if (browser == ie && os != mac) {
document.write('<link rel="stylesheet" type="text/css" href="http://ads.sina.com/cnNews/css/cnNews.css" title="master">');
}
else if (browser == netscape && os == mac) {
document.write('<link rel="stylesheet" type="text/css" href="http://ads.sina.com/cnNews/css/cnNews.css" title="master">');
}
else if (browser == ie && os == mac) {
document.write('<link rel="stylesheet" type="text/css" href="http://ads.sina.com/cnNews/css/cnNews.css" title="master">');
}
...全文
265 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Clothos 2007-02-09
  • 打赏
  • 举报
回复
谢谢你们两位高手。。。

我用了逐字扫描判断来实现了,不过仍然很感谢两位!
mobydick 2007-02-08
  • 打赏
  • 举报
回复
string yourStr = ......;
MatchCollection mc = Regex.Matches(yourStr, "<link\\s+rel=\"stylesheet\"\\s+type=\"text/css\"\\s+href=\"(?<url>.+?)\".+?>", RegexOptions.IgnoreCase);
foreach(Match m in mc)
{
m.Groups["url"].Value;//http://ads.sina.com/cnNews/css/cnNews.css
}
yufenfeila 2007-02-08
  • 打赏
  • 举报
回复
试试
string pattern = @"http://.*?\.css";
Regex regex = new Regex(pattern, RegexOptions.Singleline);
foreach (Match m in regex.Matches(str))
{
MessageBox.Show(m.Value);
}

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧