Allow only selected charcters based on regex in an EditText
问题 I want to allow users only to type certain characters based on the a regex in my android applications. How do I achieve it? 回答1: Used a TextWatcher as @Matt Ball suggested. @Override public void afterTextChanged(Editable s) { String text = s.toString(); int length = text.length(); if(length > 0 && !Pattern.matches(PATTERN, text)) { s.delete(length - 1, length); } } Edit Although the TextWatcher works, it would be cleaner to use an InputFilter . Check this example. 回答2: Try this: If the