首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

正则表达式匹配有关问题

2012-05-20 
正则表达式匹配问题例如a hrefxw_read123/a现在要把他变成a hrefxw_read123.html/a,前面连

正则表达式匹配问题
例如<a href="xw_read123"></a>
现在要把他变成<a href="xw_read123.html"></a>,前面连接的xw_read是不变的,只有后面的数字会变,现在就是把带有xw_read的链接后面加个.html

[解决办法]

C# code
string tempStr = @"<a href=""xw_read129""></a>";                string pattern = @"(?i)(?<=<a[^>]*?href=(['""]?)[^'""]*?xw_read[^'""]*)(?=(['""]?)>)";                string result = Regex.Replace(tempStr, pattern, ".html");//<a href=\"xw_read123.html\"></a>
[解决办法]
C# code
html=Regex.Replace(html,@"(?i)(?<=<a\b[^>]*?href=(['""]?)xw_read\d+)(?=\1[^>]*?>[^<>]*</a>",".html");
[解决办法]
C# code
        private string ReplaceStr(Match m)        {            return m.Value+".html";        }        private void button10_Click(object sender, EventArgs e)        {            StreamReader reader = new StreamReader("c:\\1.txt");            string source = reader.ReadToEnd();            Regex reg = new Regex(@"(?is)(?<=<a\s?href[^>].*?)xw_read[\d]+");            source = reg.Replace(source, ReplaceStr);        }
[解决办法]
C# code
            string str = "<a href=\"xwread/xw_read1213\"></a>";            string result = Regex.Replace(str, @"(?is)(?<=<a[^>]*?href=(['""\s]?).*?xw_read\d+)(?=\1)", ".html");            Console.WriteLine(result); 

热点排行