日期:2014-05-18  浏览次数:20909 次

请教正则问题
C# code

string input=@"<p>\r\n uuuu</p>\r\n";//这样为什么就能mactch到
string input = @message; //message="<p>\r\n uuuu</p>\r\n"; //我这样写为什么就match不到?或者@这个地方应该怎么写?

Match m=Regex.Match(input,@"<([^>]+)>\S*(.*?)</\1>\S*");
string value=m.Groups[2].Value;



------解决方案--------------------
@message没有这种写法(除了在存储过程里传参数)
这里@主要是显示原字符,避免转义字符引起的问题
------解决方案--------------------
@"<p>\r\n uuuu</p>\r\n"表示后面引号中的特殊字符全部自动转义
@message只表示是一个变量,特殊字符没有被转义