Android中判断字符串中必须包含字母或者数字

时间:2022-02-27 09:19:44
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public static boolean isLetterDigit(String str){
  boolean isDigit = false;//定义一个boolean值,用来表示是否包含数字
     boolean isLetter = false;//定义一个boolean值,用来表示是否包含字母
     for(int i=0 ; i
       if(Character.isDigit(str.charAt(i))){   //用char包装类中的判断数字的方法判断每一个字符
         isDigit = true;
       }
       if(Character.isLetter(str.charAt(i))){  //用char包装类中的判断字母的方法判断每一个字符
         isLetter = true;
       }
     }
     String regex = "^[a-zA-Z0-9]+$";
    boolean isRight = isDigit && isLetter&&str.matches(regex);
 return isRight;
 
 }

android判断EditText输入的数字、中文还是字母方法

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
String txt = edInput.getText().toString();
 
  Pattern p = Pattern.compile("[0-9]*");
   Matcher m = p.matcher(txt);
   if(m.matches() ){
   Toast.makeText(Main.this,"输入的是数字", Toast.LENGTH_SHORT).show();
   }
   p=Pattern.compile("[a-zA-Z]");
   m=p.matcher(txt);
   if(m.matches()){
   Toast.makeText(Main.this,"输入的是字母", Toast.LENGTH_SHORT).show();
   }
   p=Pattern.compile("[\u4e00-\u9fa5]");
   m=p.matcher(txt);
   if(m.matches()){
   Toast.makeText(Main.this,"输入的是汉字", Toast.LENGTH_SHORT).show();
   }