一个关于正则表达式的问题
我要用正则表达式 把 <td height= "100 " colspan= "2 " width= "100 "> </td> 或者 <td height= "100 " rowspan= "2 " width= "100 "> </td> 替换为 <td colspan= "2 "> </td> 或则 <td rowspan= "2 "> </td> 怎么替换。 请大家帮帮忙 我以前用的temp1 = Regex.Replace(temp1, @ "\ <td(\s.*?)*(rowspan|colspan)=(.*?)\> ", " <td $2=$3> "); 在VB中能用,但是在C#中遇到这句就死程序~ 有人能帮忙吗?? 请各位大人帮帮忙
------解决方案--------------------唉,这几天头脑发晕,居然写出这样一个变态的正则来,先凑合着用吧,符合你的要求,效率上也不会有什么损失,就是看着别扭,等哪天头脑清醒了再看看吧
string yourStr = ...............;
string resultStr = Regex.Replace(yourStr, @ " <td(?:[^> ]*?)(? <span> \s(?:colspan|rowspan)=([ ' " "]?)[^ ' " "\s> ]*\1?)?(?![^> ]*(?:colspan|rowspan))(?:[^> ]*)> ", " <td${span}> ", RegexOptions.IgnoreCase);