以下正则表达式接受带括号的字符串-
"^.*[\\(\\)].*$";
^匹配句子的开头。
。*匹配零个或多个(任何)字符。
[\\(\\)]匹配的括号。
$表示句子的结尾。
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");
}
}
}Enter data: sample(text) with parenthesis Input accepted
Enter data: sample text Not accepted
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");
}
}
}Enter email address: sample(text) with parenthesis Valid match
Enter email address: sample text Invalid match