正则表达式的问题
string registerWords = "s注册*姓名*男*中专以上学历*经验*专业*30岁以下*湖南省娄底市 ";
如何使用正则表达式匹配出:
(1)XX省XX市,如:湖南省娄底市
(2)直辖市及某区:类似XX市XX区,如:上海市黄浦区,重庆市渝中区
[解决办法]
观楼主性欲值
非不能答 实不愿答也
[解决办法]
"^\w+$ "
[解决办法]
原来事出有因
1:
[\u4E00-\u9FA5]{2,4}省[\u4E00-\u9FA5]{2,4}市
2:
[\u4E00-\u9FA5]{2,4}市[\u4E00-\u9FA5]{2,4}区
2,4表示匹配的最小和最大字串 如 乌鲁木齐=4 北京=2
[解决办法]
string yourStr = ..........;
MatchCollection mc = Regex.Matches(yourStr,@ "([\u4e00-\u9fa5]*?)市(.*?)区 ",RegexOptions.IgnoreCase);
foreach(Match m in mc)
{
m.Groups[1].Value; //市
m.Groups[2].Value; //区
}
不过这要求××市前面不能为中文,否则类似于“在上海市黄浦区”,取出的市为“在上海”,而非“上海”,取省市也一样,把里面的市区改成省市即可