我正在尝试为我的应用程序创建一个正则表达式过滤器.我使用HSQLDB存储我的消息和regex.pattern [1]类来匹配传入的消息.我注意到HSQLDB中的regex.pattern和LIKE使用了不同的匹配"teqniques".
我想要匹配:{"auth_user":"YQ==","auth_pass":"ZGFz"}.
使用HSQLDB: SELECT * FROM messages LIKE %auth%
使用regex.pattern:\bauth或auth
有没有办法从HSQLDB中的RLIKE或REGEX获取用户输入和查询?
有没有简单的方法在HSQLDB查询中转换regex.pattern?
[1] https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html
先感谢您.
编辑1:我得到的消息不仅是JSON格式化.
编辑2:我试着REGEXP_MATCHES像@JorgeCampos和@fredt一样提到我但是SQL Error [S1000]: java.lang.ClassCastException: org.hsqldb.types.ClobDataID cannot be cast to java.lang.String
当我执行以下命令时
 出现以下异常
SELECT * FROM WEBSOCKET_MESSAGE WHERE REGEXP_MATCHES(PAYLOAD_UTF8, '^a.*');
我正在尝试在 Scala 代码中实现一个查询,该查询使用 Spark 上的正则表达式Column来查找列中包含特定值的所有行,例如:
 column.rlike(".*" + str + ".*")
Run Code Online (Sandbox Code Playgroud)
str是一个字符串,可以是任何内容(除了null或empty)。
这对于我正在测试的基本查询来说效果很好。然而,作为 Spark / Scala 的新手,我不确定是否有任何特殊情况可能会破坏我需要处理的代码。是否有我需要转义的字符或需要担心的特殊情况?
我想匹配任何不以'CA'或'CA [任何数字]'结尾的行.我怎样才能在MySQL中使用rlike?(注意它不支持?!等).
这是正面匹配的正则表达式,我只需要一种方法来否定它:  '^.*[C][A][0-9]?$'
(由于令人尴尬的架构限制,我不想使用not rlike ...)