当前位置: 首页 > 编程笔记 >

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

贺高飞
2023-03-14
本文向大家介绍Java正则表达式程序以匹配括号“(”或“)”。,包括了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
 类似资料:
  • 问题内容: 匹配字符串中的’(’的正则表达式是什么? 以下是场景: 我有一串 我想使用正则表达式拆分字符串。为此,我正在使用 但是我收到以下异常。 转义似乎不起作用。 问题答案: 两种选择: 首先,你可以使用转义 回 斜线- 另外,由于它是单个字符,因此您可以将其放入不需要转义的字符类中-

  • 问题内容: 我有类似的东西 商店 结束行像1商店..我想匹配,它使用python正则表达式。 我尝试了类似的方法, 但是没有用。 编辑:添加代码,我试过 请帮助。 谢谢吉乔 问题答案: 或多或少直接回复您的评论 尝试这个 解决方案是使用,而不是使用后者,因为后者试图将整个字符串与regexp匹配,而前者只是试图在字符串内部查找与表达式匹配的子字符串。

  • 问题内容: 我需要解析一个日志文件并获取时间和相关的函数调用字符串,它以如下方式存储在日志文件中:{“ time”:“ 2012-09-24T03:08:50”,“ message”:“ Call( )开始”} 在其他字符串字符之间将有多个记录的时间函数调用,因此我希望使用正则表达式浏览文件并获取所有这些 我想获取包括大括号在内的整个记录​​的信息 我尝试了以下 和 我不断收到非法的重复错误,请帮

  • 问题内容: 我有一个类似于以下内容的字符串: 我想创建一个与逗号匹配的正则表达式,但只匹配不在括号内的逗号(在上面的示例中,除23和45之后的两个逗号之外,所有其他逗号)。我将如何做(如果使用Java正则表达式会有所不同)? 问题答案: 假定没有嵌套的括号(否则,你不能使用Java Regex来完成此任务,因为不支持递归匹配): 此正则表达式使用否定的超前断言来确保下一个括号(如果有)不是闭合括号

  • 问题内容: 当字符串以数字开头时,我需要匹配,然后是一个点,然后是一个空格和1个或多个大写字符。匹配必须发生在字符串的开头。我有以下字符串。 我尝试过的正则表达式是: 它不匹配。一个有效的正则表达式将对这个问题有什么作用? 问题答案: (对不起,我先前的错误。大脑现在坚定地投入了。嗯,也许。) 这有效: 分解: =字符串开头 =一个或多个数字 (之所以转义,是因为它在字符串中,因此) =文字(或者

  • 问题内容: 我从以下格式的文件中获取输入: 现在,我想在我的Java代码中读取int1,int2,int3和int4。我该如何在Java中使用正则表达式匹配。谢谢。 问题答案: 为了避免空值: