java
java - html img 태그 파싱 및 변환
고.니
2017. 8. 30. 01:28
반응형
웹 관련 개발을 하다보면 HTML 코드를 변환 해야하는 경우가 종종 생깁니다.
보통 타 시스템과의 연동시에 이런 경우가 많이 발생합니다.
여러 변환중에 기본적인 이미지 태그의 가로 세로 설정을 바꿔치기하는 소스를 공유 합니다.
기본적으로 정규식을 이용해서 속성 width, height / 스타일 width, height 를 모두 지워 버리고 style="width:100%" 를 넣어주는 소스 입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | public static String htmlImgWidth100Percent(String source) { Pattern pattern = Pattern.compile("<img[^>]+>"); Matcher matcher = pattern.matcher(source); while (matcher.find()) { String imgTag = matcher.group(0); String newImgTag = imgTag// .replaceAll("width\\s*=\\s*[^\\s>]+", "")// .replaceAll("width\\s*:\\s*[^'\"\\s]+", "")// .replaceAll("height\\s*=\\s*[^\\s>]+", "")// .replaceAll("height\\s*:\\s*[^'\"\\s]+", ""); if (newImgTag.matches(".*style\\s*=\\s*['\"].*")) { newImgTag = newImgTag.replaceAll("(style\\s*=\\s*['\"])", "$1width:100%;"); } else { newImgTag = newImgTag.replaceAll("<img", "<img style='width:100%;' "); } source = source.replace(imgTag, newImgTag); } return source; } |
자세한 궁금점은 댓글 달아 주시면 답변 드립니다.
반응형