我试图在Android中生成一个正则表达式,它可以满足以下条件: 编辑文字可以接受:
不应接受: 一个。只有数字 湾只有特殊字符
我尝试了很多,但仍然没有得到任何有意义的链接。请尽量节省我的一天。
我尝试使用正则表达式(?!^ \ d + $)^。+ $“),这只是有效的alphanumric要求。我正在寻找满足我要求的正则表达式。
答案 0 :(得分:2)
这真的很简单......只要清除EditText,如果里面的文字没有字母 .. 就像你说的那样 ...
不应接受 a。只有数字b 。 仅限特殊字符
TextWatcher mTextWatcher = new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
boolean atleastOneAlpha = s.toString().matches(".*[a-zA-Z]+.*");
if (!atleastOneAlpha) {
editText.setText("");
}
}
@Override
public void afterTextChanged(Editable s) {
}
};
mTargetEditText.addTextChangedListener(mTextWatcher);