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

关于简单正则!80分诚心求教!!
如何匹配
一段中文中间有换行和括号?

例如:
这段中文 //换行
是我要(匹配)的

这个要怎么匹配

------解决方案--------------------
[\u4e00-\u9fa5-\r]
------解决方案--------------------
[\u4e00-\u9fa5\n\r]
------解决方案--------------------
[\u4e00-\u9fa5\(\)0-9\n]+
------解决方案--------------------
[\u4e00-\u9fa5\d\s]+

\u4e00-\u9fa5 : 汉字
\d :数字
\s :空格(含换行)
+ : 匹配一个或多个
------解决方案--------------------
正则不是问题,问题是你没把问题说明白-_-!

你的目的是什么,提取、替换还是验证?
需要用正则来匹配的内容符合什么规律,只是中文加换行,加()吗?

[\u4e00-\u9fa5]  中文
如果是在中文系统下,\w是可以匹配中文的,同时匹配字母,数字(包括全角的)
------解决方案--------------------
举个例子吧,下面的代码可以取"时代"和"豪礼"之间的所有内容(有换行也可以)
C# code

Match m=Regex.match("你的字符串",@"?<=时代(\s|\S)*(?=豪礼)");

MessageBox.Show(m.value);