我使用那个正则表达式字符串:
final String regexStr = "^[a-zA-Z ]+$";
但我不能写我,ö,ü...... 但我可以,你,你......
TextChangedListener:
txtSicilAdi.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable s)
{
String text = txtSicilAdi.getText().toString();
if (text.length() > 0) {
if (!text.substring(text.length() - 1).matches(regexStr))
{
txtSicilAdi.setText(text.substring(0, text.length() - 1));
txtSicilAdi.setSelection(txtSicilAdi.length());
}
}
}
@Override
public void onTextChanged(CharSequence s, int st, int b, int c){ }
@Override
public void beforeTextChanged(CharSequence s, int st, int c, int a){ }
});
答案 0 :(得分:1)
试试这个:
final String regexStr = "^[a-zA-Z0-9ığüşöçİĞÜŞÖÇ ]+$";
答案 1 :(得分:1)
要考虑所有字母而不仅仅是非强调字母,您可以使用\p{L}
。
你的正则表达式应如下所示:
^[\p{L} ]+$