Orient-db 正则表达式修饰符

2023-12-29

我正在使用 orient-db 数据库,并且遇到正则表达式模式匹配问题。我确实需要在请求中存在不区分大小写的修饰符,但不知何故它无法按我的预期工作。

Query:

select from UserAccounts where email MATCHES '^ther.*'

按预期返回小写匹配项。

每当我尝试添加修饰符时,外部分隔符即

select from UserAccounts where email MATCHES '\^ther.*\i'

我得到一个空集合。实际上,只要存在分隔符,查询就会返回一个空集合。

如果无法附加修饰符,我可能可以将每个“alpha”字符替换为方括号中的表达式,即

select from UserAccounts where email MATCHES "^[tT][hH][eE][rR].*"

但我对这个解决方案并不满意。


使用 Java 不区分大小写的正则表达式修饰符(来自 Pattern 的特殊构造)适用于 OrientDB 1.7.9 - 例如:

select from UserAccounts where email MATCHES '(?i)^ther.*'

(也可以看看:模式 - 特殊结构 http://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html#special)

我也对相应的 OrientDB 问题添加了评论。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Orient-db 正则表达式修饰符 的相关文章

随机推荐