자바 필터 민감 문자

1220 단어
package com.java.minganzifu;

import java.util.regex.Matcher;
import java.util.regex.Pattern;



public class Test {
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println(replaceScreenWord("    。。。"));;
	}
	
	/**
	 *      
	 * 
	 */
	public final static String SENSITIVE_WORDS = "[ ].{0,1}[ ][ ].{0,1};";
	
	/**
	 *             (      )
	 * @param txt
	 */
	public static  String replaceScreenWord(String txt) {
		String  sensitiveWords = SENSITIVE_WORDS;
		String result = txt;
		if (sensitiveWords!=null) {
			String[] words = sensitiveWords.split(";");
			for (int i = 0; i < words.length; i++) {
				System.out.println(words[i]);
				Pattern p = Pattern.compile(words[i]);
				//log.info("o.toString="+p.toString());
				Matcher m = p.matcher(txt);
				if (m.find()) {
					result = m.replaceAll("**");
				}
			}
		}
		return result;
	}

}

정규 표현 식, 규칙:
{n,m}
m 화해시키다 n 모두 부정 정수 <= m.최소 일치 n 차 및 최대 일치 m 차례유, "o {1, 3}"는 "foooood"의 앞의 세 o 와 일치 합 니 다. "o {0, 1} '는' o? '와 같 습 니 다.쉼표 와 두 숫자 사이 에 빈 칸 이 있어 서 는 안 된다 는 것 을 주의 하 세 요.

좋은 웹페이지 즐겨찾기