Dev/Java
정규표현식을 사용하여 스크립트 제거
박공명
2010. 3. 24. 16:13
import java.util.regex.*;
이놈이 필요하다.
public String getRemoveScript(String strContent){
if(strContent == null) strContent = "";
Pattern patternTag=Pattern.compile("\\<(\\/?)(\\w+)*([^<>]*)>");
Pattern patternScript=Pattern.compile("(?i)\\<script(.*?)</script>");
Pattern patternMouseOver=Pattern.compile("(?i) onmouseover=[\"']?([^>\"']+)[\"']*");
Pattern patternMouseOut=Pattern.compile("(?i) onmouseout=[\"']?([^>\"']+)[\"']*");
Pattern patternMouseClick=Pattern.compile("(?i) onclick=[\"']?([^>\"']+)[\"']*");
Matcher matcherContent=patternScript.matcher(strContent);
strContent=matcherContent.replaceAll("");
Matcher matcherMouseOver=patternMouseOver.matcher(strContent);
strContent=matcherMouseOver.replaceAll("");
Matcher matcherMouseOut=patternMouseOut.matcher(strContent);
strContent=matcherMouseOut.replaceAll("");
Matcher matcherMouseClick=patternMouseClick.matcher(strContent);
strContent=matcherMouseClick.replaceAll("");
return strContent;
}
원하는 표현식을 제거할수있다.
프레임웍같은걸 안쓰니깐 여러가지 신경써야할것이 많다.
자바스크립트 전문가와 함께있으니 배우는게 많구나 ㅋㅋㅋ