import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?<road>계변고개|[가-힣0-9]+거리\\b|[가-힣]+[읍|면]\\s?[가-힣0-9·.]+로\\b|[가-힣]+[읍|면]\\s?[가-힣0-9·.]+길\\b|[가-힣0-9·.]+로\\b|[가-힣0-9·.]+길\\b)\\s?(?<underground>지하|지하 )?(?<air>공중|공중 )?(?<num1>[0-9]{1,4})(?:-)?(?<num2>[0-9]{1,4})?";
final String string = "울산동구울산 동구 문재2길 28 201호 (방어동,대호미주빌)대호미주빌201 호\n"
+ "울산광역시 동구 문재2길 28\n"
+ "서울 강서구 염창동 까치산로2가길 14 (뉴파인빌) 101호\n"
+ "서울특별시 강서구 까치산로2가길 14\n"
+ "울산동구울산 동구 방어진순환도로 1099 1603호 (서부동,신광그린파크)신광그린파크1603 호\n"
+ "울산광역시 동구 방어진순환도로 1099\n"
+ "울산남구울산 남구 대학로121번길 59 103동 613호 (무거동,무거현대아파트)무거현대아파트103\n"
+ "울산광역시 남구 대학로121번길 59\n"
+ "경기도안산시한양대학로5 -0 번지 한양대학교 엘지이노텍 안산R층\n"
+ "경기도 안산시 한양대학로 5\n"
+ "대구 중구 남성로 149 사랑모텔 2층2호\n"
+ "대구광역시 중구 남성로 149\n"
+ "경기 수원시 팔달구 덕영대로 지하 907-65 수원역지하상가 8호 폰앤폰2\n"
+ "경기도 수원시 팔달구 덕영대로 지하907-65\n"
+ "충북 청주시 상당구 수영로 328 장자마을현대아파트 204동102호\n"
+ "충청북도 청주시 상당구 수영로 328\n"
+ "경기도수원시장다리로1 번지 엠하우스1차303 호 엠하우스1차303 호\n"
+ "경기도 수원시 장다리로 1\n"
+ "경기도성남시정자일로177 -0 번지 인텔리지ⅡB 동3208 호\n"
+ "경기도 성남시 정자일로 177\n"
+ "경남창원시 성산구경남 창원시 성산구 원이대로 774 509동1006호\n"
+ "경상남도 창원시 성산구 원이대로 774\n"
+ "충청북도청주시안덕벌로 19번길88 -0 번지 우연빌206 호\n"
+ "충청북도 청주시 안덕벌로19번길 88\n"
+ "경남 김해시 내동 금관대로 1277번길 1-17 2층\n"
+ "경상남도 김해시 금관대로1277번길 1-17\n"
+ "서울특별시 강동구 천호동 천호대로157길 14번 8층\n"
+ "서울특별시 강동구 천호대로157길 14\n"
+ "광주 광산구 월계동 첨단2차호반아파트 211동 504호 /월계로59호반2차아파트\n"
+ "광주광역시 광산구 월계로 59\n"
+ "경상남도 창원시 마산회원구 내서읍 숲속로 27 603동1205호\n"
+ "경상남도 창원시 마산회원구 내서읍 숲속로 27\n"
+ "충청북도 청주시 상당구 중고개로 349 보성트윈힐스아파트 B동 1102호\n"
+ "충청북도 청주시 상당구 중고개로 349\n"
+ "경기도안산시초지2로 나인호텔67 -13 번지 나인호텔410 호13\n"
+ "경기도 안산시 초지2로 67-13\n"
+ "서울 구로구 구로동로18길 41 1층 명성지물장식\n"
+ "서울특별시 구로구 구로동로18길 41\n"
+ "서울특별시 강동구 양재대로 1340 주공아파트 024297206 215동 304호\n"
+ "서울특별시 강동구 양재대로 1340\n"
+ "서울특별시 구로구 구로중앙로31길 26 3층\n"
+ "서울특별시 구로구 구로중앙로31길 26\n"
+ "서울특별시 용산구 원효로1가 원효로81길 33 삼성맨션 102호\n"
+ "서울특별시 용산구 원효로81길 33\n"
+ "경상남도 창원시 마산회원구 내서읍 중리상곡로 18 1동1301호\n"
+ "경상남도 창원시 마산회원구 내서읍 중리상곡로 18\n"
+ "서울특별시 송파구 장지동 송파파인타운3단지아파트 306동 206호//충민로152/849번지/\n"
+ "서울특별시 송파구 충민로 152\n"
+ "경기도 수원시 장안구 조원동 한일타운아파트 108동 2403호/경수대로976번길22\n"
+ "경기도 수원시 장안구 경수대로976번길 22\n"
+ "서울특별시 동작구 노량진로23가길 16 102동 1603호\n"
+ "서울특별시 동작구 노량진로23가길 16\n"
+ "서울특별시 강남구 학동로 609 삼익아파트 12동 907호/서울특별시 강남구 청담동 134-21\n"
+ "서울특별시 강남구 학동로 609\n"
+ "대구광역시달서구달구벌대로1005 -0 번지 (호산동)\n"
+ "대구광역시 달서구 달구벌대로 1005\n"
+ "경상남도 창원시 마산합포구 3·15대로 90-1\n"
+ "경상남도 창원시 마산합포구 3·15대로 90-1\n"
+ "부산광역시 남구 용호동 대박타워 201호/동명로170번길56\n"
+ "부산광역시 남구 동명로170번길 56\n"
+ "경기도 화성시 우정읍 3.1만세로332번길 100-1\n"
+ "경기도 화성시 우정읍 3.1만세로332번길 100-1\n"
+ "서울특별시성동구서울숲 2길10 -0 번지 202 호\n"
+ "서울특별시 성동구 서울숲2길 10\n"
+ "서울 종로구 종로 347 롯데캐슬 천지인 지동 2710호\n"
+ "서울특별시 종로구 종로 347\n"
+ "서울 영등포구 63로 45 19동 67호\n"
+ "서울특별시 영등포구 63로 45\n"
+ "경기 화성시 동탄문화센터로 39 포스코더샾 316-1102\n"
+ "경기도 화성시 동탄문화센터로 39\n"
+ "경기도화성시동탄문화센터로39 -0 번지 동탄시범다은마을포스코더샵317 동1501 호\n"
+ "경기도 화성시 동탄문화센터로 39\n"
+ "대구 중구 종로 30 3층 이편한고시원 228호\n"
+ "대구광역시 중구 종로 30\n"
+ "서울 마포구 임정로 47-1 서울 마포구 임정로 47-1 402호\n"
+ "서울특별시 마포구 임정로 47-1\n"
+ "서울특별시 서초구 사임당로1길 13 서울특별시 서초구 사임당로1길 13/서울특별시 서초구 서초동 1546-3\n"
+ "서울특별시 서초구 사임당로1길 13\n"
+ "울산광역시 중구 유곡로 77 울산광역시 중구 유곡로 77 선경맨션 101동 1002호/울산광역시 중구 태화동 200-1\n"
+ "울산광역시 중구 유곡로 77\n"
+ "서울특별시 성동구 동일로 123 성동구 동일로123 (쌍용자동차)/서울특별시 성동구 성수동2가 19-2\n"
+ "서울특별시 성동구 동일로 123\n"
+ "서울특별시 관악구 남부순환로 1569-5 서울특별시 관악구 남부순환로 1569-5 101/서울특별시 관악구 신림동 1464-46\n"
+ "서울특별시 관악구 남부순환로 1569-5\n"
+ "서울특별시 동작구 흑석로 84 서울특별시 동작구 흑석로 84 208관 420호/서울특별시 동작구 흑석동 221\n"
+ "서울특별시 동작구 흑석로 84\n"
+ "울산광역시동구꽃바위 5길27 -0 번지 풍성비치타운1305 호\n"
+ "울산광역시 동구 꽃바위5길 27\n"
+ "충청남도천안시불당11로82 -0 번지 (불당동,대원칸타빌)607 동1202 호\n"
+ "충청남도 천안시 불당11로 82\n"
+ "서울특별시 송파구 거여동 거여아파트4단지 402동 1101호/양산로4길8거여4단지아파트\n"
+ "서울특별시 송파구 양산로4길 8\n"
+ "서울특별시성북구개운사 길 75 -25 번지 Cj international house 층\n"
+ "서울특별시 성북구 개운사길 75-25\n"
+ "서울특별시종로구인사동길12 -0 번지 (인사동,대일빌딩)\n"
+ "서울특별시 종로구 인사동길 12\n"
+ "경상남도창원시경남 창원시 마산회원구 내서읍 삼계10길 22 (삼계리,더-푸른아파트) 116동 202호\n"
+ "경상남도 창원시 마산회원구 내서읍 삼계10길 22\n"
+ "경상남도 창원시 마산회원구 내서읍 삼계10길 22\n"
+ "경상남도 창원시 마산회원구 내서읍 삼계10길 22\n"
+ "전라남도여수시전남 여수시 쌍봉로 219 202동 402호 (신기동,신기주공)신기주공2단지202 동402 호\n"
+ "전라남도 여수시 쌍봉로 219\n"
+ "경북 칠곡군 석적읍 동중리10길 20-11 (중리, 경혜빌) 507호\n"
+ "경상북도 칠곡군 석적읍 동중리10길 20-11\n"
+ "경북 칠곡군 석적읍 서중리7길 15 (남율리, 대교초등학교) 뒷건물 3층 3학년연구실\n"
+ "경상북도 칠곡군 석적읍 서중리7길 15\n"
+ "경북 칠곡군 석적읍 동중리10길 26-7 (중리) 토담채501호\n"
+ "경상북도 칠곡군 석적읍 동중리10길 26-7\n"
+ "서울구로구서울 구로구 디지털로31길 85 106동 304호 (구로동,구로두산위브아파트)구로두산위브아파트106 동304 호\n"
+ "서울특별시 구로구 디지털로31길 85\n"
+ "충북청주시 서원구충북 청주시 서원구 1순환로1137번길 79 914동 1402호 (분평동,주은아파트)주은아파트914 동1402 호\n"
+ "충청북도 청주시 서원구 1순환로1137번길 79\n"
+ "부산 남구 대연3동 : [상세주소] 대연동 유엔평화로 29번길 137\n"
+ "부산광역시 남구 유엔평화로29번길 137\n"
+ "세종특별자치시 세종특별자치시 새롬동 : [상세주소] 새롬동 새롬북로14 새뜸마을 310동 1205호 \n"
+ "세종특별자치시 새롬북로 14";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html