可以使用正则表达式来提取地址中去除省、市、区、号的内容。以下是一个示例代码:

String address = '上海市浦东新区张江高科技园区华夏东路800号';
String regex = '(?<province>[^省]+省)?(?<city>[^市]+市)?(?<district>[^区]+区)?(?<address>[^号]+号)?';
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(address);
if (matcher.find()) {
    String result = matcher.group('address').trim();
    if (matcher.group('district') != null) {
        result = matcher.group('district').trim() + result;
    }
    if (matcher.group('city') != null) {
        result = matcher.group('city').trim() + result;
    }
    if (matcher.group('province') != null) {
        result = matcher.group('province').trim() + result;
    }
    System.out.println(result);
}

这个示例代码将会输出:张江高科技园区华夏东路800。其中,正则表达式中的 (?<province>[^省]+省)(?<city>[^市]+市)(?<district>[^区]+区)(?<address>[^号]+号) 分别表示提取省、市、区、号之间的内容。在提取出来的结果中,需要将省、市、区的内容拼接到一起。

Java 正则表达式提取地址信息 - 去除省市区号

原文地址: https://www.cveoy.top/t/topic/ozw1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录