You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Cypher查询中使用不区分大小写正则表达式?Memgraph 2.6.4求助

解决Memgraph中使用正则不区分大小写的报错问题

Memgraph基于RE2正则引擎,不支持(?i)这种内嵌在正则表达式里的大小写忽略标记,这就是触发"Invalid special open parenthesis"错误的原因。

要实现不区分大小写的正则匹配,需要通过Memgraph正则函数的第三个参数指定标志:

  • 所有正则相关函数(比如regexp_match、regexp_replace、regexp_like)都支持传入第三个参数,传入'i'即可启用不区分大小写模式。

举几个实际用法例子:

  1. 匹配节点属性时忽略大小写
MATCH (user:User)
WHERE regexp_match(user.username, 'kate', 'i')
RETURN user;

上面的语句会匹配Kate、KATE、kate等所有大小写组合的用户名。

  1. 替换字符串时忽略大小写
MATCH (post:Post)
SET post.content = regexp_replace(post.content, 'memgraph', 'Memgraph Platform', 'i')
RETURN post;

这个语句会把内容里所有大小写形式的memgraph替换成指定文本。

另外,RE2还支持其他标志,比如'm'(多行模式)、's'(单行模式),多个标志可以组合传入,比如'im'。

内容的提问来源于stack exchange,提问作者KateLatte

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 06:35:44