얼마 전에 개발할 때 기사의 소개 내용 (즉, 처음 200 자)을 읽어야했습니다. 숨겨진 필드를 사용했습니다. 누군가가 물어볼 수 있고 배경은 문자를 가로 채도록 할 수 있습니다. 이는 편집기에 HTML 태그가 포함되어 있기 때문에 배경은 HTML 태그의 정규식을 처리해야합니다. 나는 며칠 전에 인터넷을 검색했고 누군가가 쓴 수업이 모든 사람과 공유 된 것을 발견했습니다. 구식이되지 마십시오 ...
import java.util.regex.matcher; java.util.regex.pattern import; /** * <p> * 제목 : HTML 관련 정규식 공구 클래스 * </p> * <p> * 설명 : HTML 태그 필터링, HTML 태그 변환 및 교체 포함 및 특정 HTML 태그 교체 * </p> * <p> * Copyright : Copyright (C) 2006 * * * @author Hejian * @version * @version 1.066-1016- */ public class htmlregexputil {개인 최종 정적 문자열 regxpforhtml = "<([^>] *)>"; // <and End with>에서 시작하는 모든 태그를 필터링하고 개인 최종 정적 문자열 regxpforimgtag = "<// s*img // s+([^>]*) // s*>"; // IMG 태그 개인 최종 정적 문자열 regxpforimatagattrib = "src =/"([^/"]+)/" "; // IMG 태그/** * */public htmlregexputil () {// to auto-a-auto-generated protessuctor stub}를 찾으십시오. 입력 */ public string replacetag (! 필터링. "<"); 부서지다; CASE '&': 필터링. Append ( "&"); 부서지다; 기본값 : 필터링 (C); }} return (필터링 .toString ()); } / ** * 기본 기능 : 태그가 존재하는지 여부를 결정하십시오 * <p> * * @param input * @return boolean * / public boolean hasspecialchars (문자열 입력) {부울 플래그 = false; if ((입력! = null) && (input.length ()> 0)) {char c; for (int i = 0; i <= input.length () -1; i ++) {c = input.charat (i); 스위치 (c) {case '>': flag = true; 부서지다; 사례 '<': flag = true; 부서지다; CASE ' "': flag = true; break; case '&': flag = true; break;}}} return flag;} / ** * 기본 함수 :"< "로 시작하는 모든 태그를 필터링하고"< "로 시작하고"> " * <p> * * @param str * @param str * / public static string filterhtml (string str) {pattern pattern = compile (regxpforhter)으로 끝납니다. matcher (str); @param str*@return string*/public static string fithtmltag (String str, string tag) {string regxp = "<// s*" + tag + "// s + ([^>]*); boolean result1 = matcher.find () {matcher.appendReplacement (sb, "); 반환 sb.toString (); }/** * 기본 함수 : 지정된 태그 * <p> * * @param str * @param beforetag * 레이블을 바꾸기 위해 * @param tagattrib * 라벨 속성 값을 대체 할 * @param starttag * 새 태그 시작 태그 * @param endtag * 새로운 태그 끝 * @return string * @for 예제 : 교체 값의 src value value [/img value] replacehtmltag (문자열 str, string beforetag, string tagattrib, string starttag, string endtag) {string regxpfortag = "<// s*" + beforetag + "// s + ([^>]*) // s*>"; 문자열 regxpfortagattrib = tagattrib + "=/"([^/"] +)/" "; Pattern PatternFortag = pattern.compile (regxpfortag); pattern patternforattrib = pattern.compile (regxpfortagattrib); matcherfortag = patternfortag.matcher (str); stringbuffer sb = boolean grome (); (결과) {stringBuffer sbreplace = matcher matcherforattrib.matcher (matcherforattrib.find ()) {matcherforattrib.appendreplacement matcherfortag.appendReplacement (sbreplace.toString ());위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.