求在字符串中匹配中文数字组合的java正则表达式
问题描述:
求一个在字符串中识别 中文和数字组合的子串 的java方法,如用正则表达式来匹配。如何匹配?
中文和数字组合的子串 子串格式为:
1、中文个数 为 3-6个字。
2、数字 可以固定在1-4位, 正则为\d{1,4}。
3、“号”字
如“小镇100号”“大街101号” 这种形式
输入为 1个字符串 s="我在小镇100号";
输出为 result = "小镇100号";
输入为 1个字符串 s="我在大街101号";
输出为 result = "大街101号";
这种字符串如何匹配呢? java正则表达式如何编写?
很多人说 匹配中文为 [u4e00-u9fa5],但我试过 不行? 为什么!
答
[\u4E00-\u9FA5]汉字﹐[\uFE30-\uFFA0]全角字符
答
我记得昨天我好象回答过这个问题,奇怪的是现在在问题频道找不到了。
从正则表达式的匹配来看,
\w{1,6}\d{1,4}\w{1,2}
这个就可以满足你的需求。
[img]http://dl.iteye.com/upload/picture/pic/69300/0065d140-19e6-33fb-b87b-58ffd9031551.jpg[/img]