求助高手,中文匹配正则表达式 我现在有一个地址,比如:上海市北京路100号400室用正则表达式如何拆分成:上海市 北京路 100号 400室这样的java正则表达式该如何写,最好能帮我解释下,谢谢了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 /** * @param args */ public static void main(String[] args) { String sample = "上海市北京路100号400室"; String regexPattern = "(.+?[市路号室])"; Pattern pattern = Pattern.compile(regexPattern); Matcher matcher = pattern.matcher(sample); while (matcher.find()) { System.out.println(matcher.group()); } }“市路号室”可以理解为你的地址单位,范围依次缩小,每次找到一个单位,就把“内容+单位”输出 /** * @param args */ public static void main(String[] args) { String sample = "上海市北京路100号2号楼100室C"; String regexPattern = ".+?([市楼路室]|号楼|号)|.+$"; Pattern pattern = Pattern.compile(regexPattern); Matcher matcher = pattern.matcher(sample); while (matcher.find()) { System.out.println(matcher.group()); } }-----------------------上海市北京路100号2号楼100室C-----------------------号楼这样的东西自己想办法解决一下吧,把“号楼”整体当作一个单位,这样它的优先级别就高于“号”了如果出现类似的情况,就在后面添加这些单位,优先级别从样式左边开始依次降低 2008+08=200808 几道面试题求解~~~~~哭啊 运行结果为什么是这样 请问swing的程序运行特别慢是怎么回事? 如何获得主机的CPU利用率! 怎样把XML文件的内容读到 StringBuffer中来!!!!!!! 急急。在线等..toArray问题请指教 用SJF排序process,之后打印出*的问题 有关border问题??各位看看啊 怎么才能把文字改成图片? 面试挺难的(多选题) 求ERP,银行等系统的概要说明书
* @param args
*/
public static void main(String[] args) {
String sample = "上海市北京路100号400室";
String regexPattern = "(.+?[市路号室])";
Pattern pattern = Pattern.compile(regexPattern);
Matcher matcher = pattern.matcher(sample);
while (matcher.find()) {
System.out.println(matcher.group());
}
}“市路号室”可以理解为你的地址单位,范围依次缩小,每次找到一个单位,就把“内容+单位”输出
* @param args
*/
public static void main(String[] args) {
String sample = "上海市北京路100号2号楼100室C";
String regexPattern = ".+?([市楼路室]|号楼|号)|.+$";
Pattern pattern = Pattern.compile(regexPattern);
Matcher matcher = pattern.matcher(sample);
while (matcher.find()) {
System.out.println(matcher.group());
}
}
-----------------------
上海市
北京路
100号
2号楼
100室
C
-----------------------
号楼这样的东西自己想办法解决一下吧,把“号楼”整体当作一个单位,这样它的优先级别就高于“号”了如果出现类似的情况,就在后面添加这些单位,优先级别从样式左边开始依次降低