码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式实现对地址第一个区域的字符串截取

时间:2016-09-01 09:20:35      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:

有如下地址类型的字符串:

田家庵区淮河新城二期17,2,404

兰溪市金圆上都18幢

荔县管池镇

 

要截取出第一个区域的字符串,以上3个截取的值分别为: 田家庵区  兰溪市 荔县

 

对应代码,初始写为

var value = Regex.Match(lc[2], ".+[市区县镇路道街]{1,1}");

后来发现其默认是贪婪模式,如"荔县管池镇",会把后面的镇也截取进去,于是修改为

var value = Regex.Match(lc[2], ".+?[市区县镇路道街]{1,1}");

在公司电脑上仍然会多截取(后在家电脑上测试,又能正确通过)

var value = Regex.Match(lc[2], ".+?[市区县镇路道街]{1,1}?");

添加2个阻止贪婪模式后,肯定不会再多截取了。

 

正则表达式实现对地址第一个区域的字符串截取

标签:

原文地址:http://www.cnblogs.com/flyant/p/5828260.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!