如何在Java中验证字符串(对于字母)?

要验证字母字符串,可以将字符串中的每个字符与英语字母中的字符(两种情况)进行比较,或者使用正则表达式。

例1

下面的程序从用户那里接收一个字符串值(名称),并通过将给定的字符串中的每个字符与英语字母中的字符进行比较,找出给定的字符串是否为专有名称。

import java.util.Scanner;
public class ValidatingString {
   public static void main(String args[]) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter your name: ");
      String str = sc.next();
      boolean flag = true;
      for (int i = 0; i < str.length(); i++) {
         char ch = str.charAt(i);
         if (!(ch >= 'a' && ch <= 'z'|| ch >= 'A' && ch <= 'Z')) {
            flag = false;
         }
      }
      if(flag)
         System.out.println("给定的字符串是一个专有名称。");
      else
         System.out.println("给定的字符串是适当的字符串,不是适当的名称。");
   }
}

输出1

Enter your name:
krishna45
给定的字符串是适当的字符串,不是适当的名称。

输出2

Enter your name:
kasyap
给定的字符串是一个专有名称。

例2

以下程序从用户那里接收字符串值(名称),并使用正则表达式找出给定的字符串是否为专有名称。

import java.util.Scanner;
public class ValidatingString2 {
   public static void main(String args[]) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter your name: ");
      String str = sc.next();
      if((!str.equals(null))&&str.matches("^[a-zA-Z]*$"))
         System.out.println("给定的字符串是一个专有名称。");
      else
         System.out.println("给定的字符串是适当的字符串,不是适当的名称。");
   }
}

输出1

Enter your name:
krishna45
给定的字符串是适当的字符串,不是适当的名称。

输出2

Enter your name:
kasyap
给定的字符串是一个专有名称。
猜你喜欢