Java 如何在另一个字符串中查找字符串,同时忽略小写/大写?

Java 如何在另一个字符串中查找字符串,同时忽略小写/大写?,java,Java,我需要定义我的查询是DDL还是DML。要做到这一点,我需要在另一个字符串(我的查询)中找到字符串的一部分,如“create”“update”等 我的字符串: "CreATE table test (id number);" "sElECT * from user;" "ALTER table;" 如果字符串包含“create/select/alter”并且忽略小写和大写,有人能告诉我如何返回true吗? 我试过: Pattern.compile(Pattern.quote(query), Pa

我需要定义我的查询是DDL还是DML。要做到这一点,我需要在另一个字符串(我的查询)中找到字符串的一部分,如“create”“update”等

我的字符串:

"CreATE table test (id number);"
"sElECT * from user;"
"ALTER table;"
如果字符串包含“create/select/alter”并且忽略小写和大写,有人能告诉我如何返回true吗?
我试过:

Pattern.compile(Pattern.quote(query), Pattern.CASE_INSENSITIVE).matcher("CREATE").find())

但它有时有效,有时无效,我认为这是实现我的目标的糟糕方法。

只需使用字符串类方法即可

"CreATE table test (id number);".toLowerCase().contains("create")

只需使用字符串类方法

"CreATE table test (id number);".toLowerCase().contains("create")

这回答了你的问题吗?应该是
Pattern.compile(Pattern.quote(“create”)、Pattern.Pattern不区分大小写).matcher(query.find())
如果需要,请检查它是否包含任何create/select/alter-
Stream.of(“create”、“select”、“alter”).anyMatch(myString.toLowerCase()::contains)Pattern.compile(Pattern.quote(“create”)、Pattern.Pattern不区分大小写).matcher(query.find())
如果需要,请检查它是否包含任何create/select/alter-
Stream.of(“create”、“select”、“alter”).anyMatch(myString.toLowerCase()::contains)