Java正则表达式程序以匹配括号“(”或“)”。

以下正则表达式接受带括号的字符串-

"^.*[\\(\\)].*$";
  • ^匹配句子的开头。

  • 。*匹配零个或多个(任何)字符。

  • [\\(\\)]匹配的括号。

  • $表示句子的结尾。

例子1

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class SampleTest {
   public static void main( String args[] ) {
      String regex = "^.*[\\(\\)].*$";
      //从用户读取输入
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter data: ");
      String input = sc.nextLine();
      //实例化Pattern类
      Pattern pattern = Pattern.compile(regex);
      //实例化Matcher类
      Matcher matcher = pattern.matcher(input);
      //验证是否发生匹配
      if(matcher.find()) {
         System.out.println("Input accepted");
      }else {
         System.out.println("Not accepted");
      }
   }
}

输出1

Enter data:
sample(text) with parenthesis
Input accepted

输出2

Enter data:
sample text
Not accepted

例子2

import java.util.Scanner;
public class Example {
   public static void main(String args[]) {
      //从用户读取字符串
      System.out.println("Enter email address: ");
      Scanner sc = new Scanner(System.in);
      String e_mail = sc.nextLine();
      //正则表达式
      String regex = "^.*[\\(\\)].*$";
      boolean result = e_mail.matches(regex);
      if(result) {
         System.out.println("Valid match");
      } else {
         System.out.println("Invalid match");
      }
   }
}

输出1

Enter email address:
sample(text) with parenthesis
Valid match

输出2

Enter email address:
sample text
Invalid match