在 Cypher 查询中使用正则表达式捕获组

2024-02-25

在密码中文档 http://docs.neo4j.org/chunked/milestone/query-where.html#_regular_expressions它说您可以使用正则表达式来匹配字符串属性中的特定“先前已知”模式。

是否也可以使用捕获组?

举个例子:

我的节点属性是序列化的 JSON,如下所示:

n.json = '{"name": "John", "gender": "m"}'
n.json = '{"name": "Jane", "gender": "f"}'

我想了解不同性别的人之间的关系:

MATCH r=(n)--(m)
WHERE NOT (n.json =~ '.*gender": "(\c)".*')[1] = (m.json =~ '.*gender": "(\c)".*')[1]
RETURN r

或类似的东西。


这是一个相关问题 https://stackoverflow.com/questions/17351069/using-regular-expressions-beyond-matching-in-cypher。简短的回答是 cypher 不支持反向引用;正则表达式只是为了匹配。

一般来说,当我遇到像您所面临的问题时,我会尝试在导入步骤之前处理它们。 IE。您可以从数据开始,将其整理为 CSV,然后将 CSV 加载到图表中。在操作 CSV 的过程中,我会使用其他一些工具(sed/awk/perl/python/其他工具)进行模式匹配,然后在将数据加载到图表中之前修改数据以执行此类操作。

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

在 Cypher 查询中使用正则表达式捕获组 的相关文章

随机推荐

  • 在 Cordova 中使用相机后,iOS 收到内存警告

    当我拍照时 我开始不断收到内存警告 我正在使用 Cordova 3 5 和带有这些设置的相机插件 var config var pictureSource var destinationType sets the format of ret
  • Aiohttp 在浏览器正常打开的某些网站上引发证书错误

    代码示例 import aiohttp import asyncio async def main url async with aiohttp ClientSession as session async with session get
  • 使用 OAuth2 保护 Nodejs / sailsjs API

    我使用 sailsjs 开发了一个 REST API 我想添加 OAuth2 授权来保护此 API 我对 OAuth 很陌生 不知道从哪里开始 我发现了几个可用于此目的的模块 例如 oauth2orize 及其用法示例https githu
  • fastText 中的精确度和召回率?

    我实现了 fastText 进行文本分类 链接https github com facebookresearch fastText blob master tutorials supervised learning md https git
  • AWS AppSync:如何通过 DynamoDB 返回有效的 JSON

    我有一个 AppSync GraphQL API 可以对 DynamoDB 进行查询并返回 JSON 字符串 但是在我的响应映射模板中 我使用内置 util parseJson 功能如所列here https docs aws amazon
  • Jquery Ajax 验证复选框

    可能是一个简单的解决方案 所以我有点尴尬 但 JS 并不是我的强项 所以我想我会问 我正在使用Jquery表单 http jquery malsup com form 用于提交一组复选框以满足我正在制作的活动策划应用程序的要求的插件 如果没
  • 源代码管理中的 .vcxproj

    我一直在阅读很多关于 vcxproj 文件是否应该添加到源代码管理中的问题 共识似乎是他们应该这样做 但是当打开文件时 我注意到其中包含很多用户特定的路径 鉴于这是一个由很多人共同开发的项目 我还应该将其添加到源代码管理中吗 看起来它会与其
  • Json.NET - CustomCreationConverter 中单个属性的默认反序列化行为

    在下面的场景中 我如何得到CrazyItemConverter当遇到我要反序列化的类型中存在的 JSON 属性时 是否照常进行 我有一些如下所示的 JSON Item Name Apple Id null Size 5 Quality 2
  • Symfony sfDoctrineGuardPlugin 自定义登录查询

    我使用 symfony sfDoctrineGuardPlugin 来管理前端用户和后端用户的身份验证 没关系 只是我不希望前端用户能够登录后端应用程序 我可以设置凭据 但在用户通过身份验证后会检查凭据 我想要的是以表单形式登录 永远不会验
  • 使第二个弹性列可滚动

    我看到这个例子来自Flex flex column 内的可滚动 div https stackoverflow com questions 34157058 flex scrollable div inside flex column并尝试
  • 安装 Vuetify 后需要额外的加载器

    使用最新的 VueCli 构建的干净项目 使用 vue add vuetify 添加了 Vuetify 一切正常 添加了身份验证脚本 我今年已经成功使用了 3 次 现在我收到此错误 ERROR Failed to compile with
  • Visual Studio 2015 - 用户任务消失了?

    我最近从 Visual Studio 2013 切换到 2015 并转换了所有旧项目 但是 现在我似乎找不到我的用户任务了 任务列表中曾经有一个下拉菜单 但看起来在新版本中已经消失了 除非我遗漏了一些东西 用户任务是否被删除 如果是这样 我
  • Web3.py:使用待处理过滤器时出现 ValueError

    我正在尝试使用 web3 py 查找 BEP20 网络中的待处理交易 如中所述在这个堆栈溢出问题中 https stackoverflow com questions 57201888 different ways of getting e
  • 使用泛型和协议作为类型参数之间的区别,在函数中实现它们的优缺点是什么

    由于 Swift 允许我们在函数中使用 Protocol 和 Generic 作为参数类型 所以我想到了下面的场景 protocol AProtocol var name String get class ClassA AProtocol
  • 检查php中是否存在session

    在我的 php 函数中 我想检查会话是否存在 根据会话的存在 我想返回 true 或 false 我有一个登录功能 它使用session start 并在登录时将值存储到会话变量中 并且在注销时将执行此操作session destroy 现
  • list.extend 和列表理解[重复]

    这个问题在这里已经有答案了 当我需要向列表中添加几个相同的项目时 我使用 list extend a a b c a extend d 3 Result a b c d d d 但是 如何与列表理解进行类似的操作呢 a a 2 b 2 c
  • CSS @page 中的不同大小:第一个结果整个@page 大小相同

    它与打印有关 并且仅与打印有关 css page size A4 portrait page first size 210mm 1000mm 根据 CSS 的定义 只有首页高度为 1000 毫米 其余页面高度为 297 毫米 A4 但在 C
  • 为什么在 JavaScript 中返回时要使用括号?

    在Restify框架代码中我发现了这个函数 function queryParser options function parseQueryString req res next Some code goes there return ne
  • 获取逗号分隔字符串的第一个值[重复]

    这个问题在这里已经有答案了 我正在寻找从逗号分隔的字符串中获取第一个值的最快 最短的方法 in line 我能做的就是 string a b c d echo The first thing is end array reverse exp
  • 在 Cypher 查询中使用正则表达式捕获组

    在密码中文档 http docs neo4j org chunked milestone query where html regular expressions它说您可以使用正则表达式来匹配字符串属性中的特定 先前已知 模式 是否也可以使