Java 不区分大小写的方法分解和解释

Java Case Insensitive Method Breakdown and Explanation

public class StringMatchesCaseInsensitive
{
   public static void main(String[] args)
   {
      String stringToSearch = "Four score and seven years ago our fathers ...";

      // this won't work because the pattern is in upper-case
      System.out.println("Try 1: " + stringToSearch.matches(".*SEVEN.*"));

      // the magic (?i:X) syntax makes this search case-insensitive, so it returns true
      System.out.println("Try 2: " + stringToSearch.matches("(?i:.*SEVEN.*)"));
   }
}

上面的代码块就是这样;不区分大小写搜索的示例。但我最感兴趣的是:"?i:.*SEVEN.*";.

我知道 ?:. 是不区分大小写的语法。但是封装了SEVEN.*呢?它有什么作用?

在哪里可以阅读有关 .*.* 正则表达式修饰符的更多信息?

提前致谢

以下是这些符号所代表的含义。

  • .代表除换行符外的任意字符。如果与 s 标志一起使用,那么它也匹配换行符。

  • * 是表示 zero or many.

  • 的量词
  • .* 会说 zero or many characters.

您可以在

上阅读更多关于它们的信息