正则表达式 变量问题。

bear63 2012-09-06 12:17:10
string source;
source = 获取HTML代码
//string RegTxt=@"<a.*?href=""(?<url>.*?)"".*?>(?<title>.*?)</a>"; //这样可以
//如果把 @"<a.*?href=""(?<url>.*?)"".*?>(?<title>.*?)</a>" 写到数据库一个字段,里
string Regtxt=读取数据库字段 //这样就老是不行,请问我要怎么把正则写入数据库,读取的时候能使用呢?
MatchCollection matches = Regex.Matches(source, Regtxt , RegexOptions.IgnoreCase);
foreach (Match geturl in matches)
{
string gurl = geturl.Groups["url"].Value;
textBox2.Text = gurl;
}

估计关键是“@”这个问题,可是找不到解决方法,求高手指点。
...全文
77 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
EnForGrass 2012-09-06
  • 打赏
  • 举报
回复
用@这个注意字符转义
string RegTxt=@"(?i)<a[^>]*?href=(['"]?)(?<url>[^""]*)\1[^>]*?>(?<title>.*?)</a>";
-过客- 2012-09-06
  • 打赏
  • 举报
回复
你用了太多的非贪婪模式,优化一下

string RegTxt="(?i)<a[^>]*?href=\"(?<url>[^\"]*)\"[^>]*>(?<title>.*?)</a>"; 
-过客- 2012-09-06
  • 打赏
  • 举报
回复
在你正则基础上简单修改
string RegTxt="<a.*?href=\"(?<url>.*?)\".*?>(?<title>.*?)</a>"; 

110,539

社区成员

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

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

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