有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java搜索中的正则表达式

如何使用regex查找字符串“executeQuery”,但如果整个字符串都有“vo”或“Viewobject”,则无法找到该字符串

示例:

ResultSet rs = ps.executeQuery(); --> CORRECT
super.executeQueryForCollection(object, object1, i); --> CORRECT
voOEPoDEStruktura.executeQuery(); --> WRONG
ViewObject.executeQuery(); --> WRONG

共 (2) 个答案

  1. # 1 楼答案

    ^(?!.*(?:vo|ViewObject)).*executeQuery.*是与规范匹配的正则表达式。我没有使用捕获组,因为您没有指定要捕获任何内容

    您应该使用包含的解决方案,因为它更容易理解

  2. # 2 楼答案

    你不一定需要正则表达式。您可以改用contains。你的情况是:

    str.contains("executeQuery") && !(str.contains("vo") || str.contains("Viewobject"))