regex - 正则表达式将组加入另一个
问题描述
早上好,
我必须提供一个使用正则表达式的解析工具。该工具是用java编写的。它可以像这样简单地喂食:
表达(。*)
方法:查找表达式并将组 1(或 2 等)的内容保存到数据库列中。
现在我必须解析收据,其中一些在表达式 1 中具有所需内容,而在表达式 2 中具有其他内容。
所以我这样寻求: expression1(. )|expression2(. )
所以两个表达式都找到了。
问题是,如果一个不为空,该工具只能保存一个 groupX,而不是 group1 或 group2。
有没有可能在表达式周围包裹一些东西,以便结果总是出现在 groupX 中?
解决方案
您可以对单个捕获组使用交替,例如
(?:expression1|expression2)(.*)
推荐阅读
- javascript - 如果没有 lat/lng 值,则不要将其绘制在地图上
- c# - C# Source Generator - 警告 CS8032:无法创建分析器实例
- sql - 访问基于过滤器的动态 AVG 查询
- python - 无法导入 Django。您确定它已安装并在您的 PYTHONPATH 环境变量中可用吗?--> WSGI.PY 文件
- angular - ngrx 效应进入无限循环的问题
- javascript - D3.JS 和 Vue 如何创建一个基本的圆环图
- node.js - 在nodejs中发布表单数据axios
- django - 使用 Django 和 GraphQL 过滤非空日期
- r - 为特定类着色
- python - 如何使用 Pandas 加入 json