我有一个Spring Data Neo4j(3.4.0.RELEASE)实体,它带有一个索引的
属性
名称
:
@NodeEntity
public class Decision {
@Indexed
private String name;
....
我需要通过
name
property实现不区分大小写的搜索。
在我的
决策库
中,我创建了以下方法:
@Query("MATCH (d:Decision) WHERE d.name =~ '(?i){name}' RETURN d")
Decision findByNameIgnoreCase(@Param("name") String name);
但是在执行后,我得到了以下例外:
org.springframework.dao.InvalidDataAccessApiUsageException: Illegal repetition near index 3
(?i){name}
^; nested exception is java.util.regex.PatternSyntaxException: Illegal repetition near index 3
(?i){name}
^
如何在name属性上实现正确的不区分大小写的搜索?
我知道这有点棘手,但您可以在注释中使用此查询,我想:
MATCH (d:Decision) WHERE LOWER(d.name) = LOWER({name}) RETURN d
如果将两个名称(参数和值)都设置为小写,则大小写无关紧要。
要完全执行您想要的操作(正则表达式匹配),必须使用//:
MATCH (d:Decision) WHERE d.name =~ /(?i){name}/ RETURN d
让我知道它是否有效。
问题内容: 我正在使用Flask-SQLAlchemy从用户数据库中查询;但是,虽然 will return doing returns 我想知道是否有一种以不区分大小写的方式查询数据库的方法,以便第二个示例仍然返回 问题答案: 你可以使用过滤器中的或功能来完成此操作: 另一种选择是使用而不是进行搜索:
问题内容: 有谁知道如何使用Postgres 7.4进行不区分大小写的搜索/查询? 我在考虑RegEx,但不确定如何执行此操作,或者不确定是否有函数/标志或可以添加查询的内容? 我正在使用PHP连接并执行查询。 因此,我正在寻找匹配地址信息的方法。 例子: 有什么想法吗? 问题答案: 使用,例如: 文件资料。 或者,您可以使用或,例如:
问题内容: 我正在尝试提出一个要求区分大小写的结果的请求。 例如在我的数据库中 该请求是 但我有3行作为结果,我只想要abcdef 我试图找到一个解决方案 但是我有这个错误: 未知归类:’Latin1_General_CS_AS’{“成功”:false,“错误”:“#1273-未知归类:’Latin1_General_CS_AS’”} 谢谢 问题答案: 感谢您的帮助,我找到了不是latin1 ut
我需要一个像
问题内容: 我有一个Lucene索引,该索引当前区分大小写。我想添加的 选项 有不区分大小写作为后备的。这意味着与案例匹配的结果将获得更大的权重,并且将首先出现。例如,如果结果数限制为10,并且有10个匹配项符合我的情况,那就足够了。如果仅找到7个结果,则可以从不区分大小写的搜索中再添加3个结果。 我的案子实际上更复杂,因为我有不同重量的物品。理想情况下,匹配“错误”的表壳会增加一些重量。不用说,
问题内容: 我有这个json文件: 我使用以下Go代码搜索数据: 它会查找是否通过“板球”之类的相同字符串进行搜索,但是如果我搜索此“板球”之类的字符串,则不会找到它。 问题答案: 添加到您的RegEx。