EditText에 특정 문자만 입력 되도록

// 영문 + 숫자 만 입력 되도록
public InputFilter filterAlphaNum = new InputFilter() {
    public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
        Pattern ps = Pattern.compile("^[a-zA-Z0-9]*$"); 
        if (!ps.matcher(source).matches()) { 
            return ""; 
        } 
        return null; 
    } 
}; 


// 아래와 같이 EditText에 적용 한다.
editText.setFilters(new InputFilter[]{filterAlphaNum}); 


아래 소스에서 정규식만 바꿔주면 된다.
Pattern ps = Pattern.compile("^[a-zA-Z0-9]*$"); 


한글만 입력 되도록 : "^[ㄱ-ㅣ가-힣]*$"
영어만 입력 되도록 : "^[a-zA-Z]*$"
숫자만 입력 되도록 : "^[0-9]*$"