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
.
您可以在
上阅读更多关于它们的信息
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
.
您可以在
上阅读更多关于它们的信息