asp.net中求处理字符串的一个正则表达式解决思路
asp.net中求处理字符串的一个正则表达式
例如这样一个字符串
string s="aaaa<table>bbbb<table><tersfjs>fklsk></table></table><table>cccccc<tr>sf</tr></table>fwefw";
我想得到得结果是:
string result1 = "<table>bbbb<table><tersfjs>fklsk></table></table>";
string result2 ="<table>cccccc<tr>sf</tr></table>";
也就是获取整个所有table里面的元素
如果table存在嵌套只获取最外层的table里面的元素。求解答求正则,在线等谢谢了各位大哥
------解决方案--------------------
例如这样一个字符串
string s="aaaa<table>bbbb<table><tersfjs>fklsk></table></table><table>cccccc<tr>sf</tr></table>fwefw";
我想得到得结果是:
string result1 = "<table>bbbb<table><tersfjs>fklsk></table></table>";
string result2 ="<table>cccccc<tr>sf</tr></table>";
也就是获取整个所有table里面的元素
如果table存在嵌套只获取最外层的table里面的元素。求解答求正则,在线等谢谢了各位大哥
------解决方案--------------------
- C# code
void Main() { string s="aaaa<table>bbbb<table><tersfjs>fklsk></table></table><table>cccccc<tr>sf</tr></table>fwefw"; Regex reg=new Regex(@"(?is)<table[^>]*>(?><table[^>]*>(?<o>)|</table>(?<-o>)|(?:(?!</?table\b).)*)*(?(o)(?!))</table>"); foreach(Match m in reg.Matches(s)) { Console.WriteLine(m.Value); } /* <table>bbbb<table><tersfjs>fklsk></table></table> <table>cccccc<tr>sf</tr></table> */ }