Java 正则表达式程序验证字符串中是否至少包含一个字母数字字符。


以下正则表达式匹配包含至少一个字母数字字符的字符串 -

"^.*[a-zA-Z0-9]+.*$";

其中,

  • ^.* 匹配从零个或更多(任意)字符开始的字符串。

  • [a-zA-Z0-9]+ 匹配至少一个字母数字字符。

  • .*$ 匹配以零个或更多(任意)字符结尾的字符串。

示例 1

 现场演示

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
   public static void main(String args[]) {
      //Reading String from user
      System.out.println("Enter a string");
      Scanner sc = new Scanner(System.in);
      String input = sc.nextLine();
      //Regular expression
      String regex = "^.*[a-zA-Z0-9]+.*$";
      //Compiling the regular expression
      Pattern pattern = Pattern.compile(regex);
      //Retrieving the matcher object
      Matcher matcher = pattern.matcher(input);
      int count = 0;
      if(matcher.matches()) {
         System.out.println("Given string is valid");
      } else {
         System.out.println("Given string is not valid");
      }
   }
}

输出 1

Enter a string
###test123$$$
Given string is valid

输出 2

Enter a string
####$$$$
Given string is not valid

示例 2

 现场演示

import java.util.Scanner;
public class Example {
   public static void main(String args[]) {
      //Reading String from user
      System.out.println("Enter a string");
      Scanner sc = new Scanner(System.in);
      String input = sc.nextLine();
      //Regular expression
      String regex = "^.*[a-zA-Z0-9]+.*$";
      boolean result = input.matches(regex);
      if(result) {
         System.out.println("Valid match");
      }else {
         System.out.println("In valid match");
      }
   }
}

输出 1

Enter a string
###test123$$$
Valid match

输出 2

Enter a string
####$$$$
In valid match

更新于: 2020-01-10

7K+ 浏览

开启你的职业生涯

完成课程获得认证

立即开始
广告