正则表达式从捕获中排除匹配项

2024-03-14

在 .Net 中使用正则表达式

我将有一组类似这样的数据

< Bunch o' Data Here >

where <只是新记录的指标>是记录的结尾。

这些记录可能会像这样出现

< Dataset 1><Dataset 2 broken, no closing tag <dataset 3>

他们也可以作为

< Dataset 1>Dataset 2 broken, no opening tag ><dataset 3>

不过,我不确定后一种情况是否可能,当我必须的时候我会跨过那座桥。

我正在尝试使用正则表达式根据此开始和结束字符将它们分成记录,最终是这样的

Match 1 = < Dataset 1>
Match 2 = <Dataset 2 broken, no closing tag 
Match 3 = <Dataset 3>

我试图弄清楚非捕获组是如何工作的,也许我的理解是错误的。

<.*?(?:<|>)

我认为让我非常接近,除了它包括第三组数据的开头字符和第二组数据的捕获。 我也怀疑?:没有做它需要做的事情,如果将其取出,它会返回相同的匹配集(2)。


看起来你已经把它翻转了。你会想要使用?:不捕获一个群体,不:?.

 <.*?(?:<|>)

稍微扩展一下:?捕获组中的运算符表示您想要做一些特殊的事情。 A:意味着不捕获,但还有其他操作数可以给?以便执行其他操作。常见的是前瞻(?=)和后视(?<),但还有很多其他的。

我也刚刚意识到您想要匹配的范围(超出非捕获问题)。匹配的括号/括号/等的语言不是规则的,所以 - 假设我正确理解你的目的 - 你需要创建一个相当复杂的扩展正则表达式才能匹配你想要的。还有其他几个与此相关的问题,包括this one https://stackoverflow.com/questions/2595254/matching-math-expression-with-regular-expression其中有一些关于它的讨论。

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

正则表达式从捕获中排除匹配项 的相关文章

  • Slim 3 - 斜杠作为路由参数的一部分

    我需要使用可以包含斜杠 的参数来编写 URL 例如 经典的 hello username 路线 默认情况下 hello Fabien将匹配此路线 但不匹配 hello Fabien Kris 我想问你如何在 Slim 3 框架中做到这一点
  • .pdbs 会减慢发布应用程序的速度吗?

    如果 dll 中包含 pdb 程序调试 文件 则行号将出现在引发的任何异常的堆栈跟踪中 这会影响应用程序的性能吗 这个问题与发布与调试 即优化 无关 这是关于拥有 pdb 文件的性能影响 每次抛出异常时都会读取 pdb 文件吗 加载程序集时
  • libtool 在 Ubuntu 13.04 上构建 thrift 0.9.1 时出错

    在 Ubuntu 13 04 上构建 thrift 0 9 1 支持 C C java C perl python 时出现此错误 configure 不带任何选项运行 make 不带任何选项运行 Making all in test mak
  • C# Outlook 从收件人获取 CompanyName 属性

    我目前正在使用 C 编写 Outlook 2010 AddIn 我想要的是从我从 AppointmentItem 中提取的 Recipient 对象中获取 CompanyName 属性 因此 有了 AppointmentItem 的收件人
  • 在 Mac OS X 上安装 libxml2 时出现问题

    我正在尝试在我的 Mac 操作系统 10 6 4 上安装 libxml2 我实际上正在尝试在 Python 中运行 Scrapy 脚本 这需要我安装 Twisted Zope 现在还需要安装 libxml2 我已经下载了最新版本 2 7 7
  • 从时间列表中查找最接近的时间

    所以 这是场景 我有一个带有创建时间的文件 我想从该文件的创建时间最接近或相等的时间列表中选择一个时间 完成此操作的最佳方法是什么 var closestTime listOfTimes OrderBy t gt Math Abs t fi
  • make_shared<>() 中的 WKWYL 优化是否会给某些多线程应用程序带来惩罚?

    前几天我偶然看到这个非常有趣的演示 http channel9 msdn com Events GoingNative GoingNative 2012 STL11 Magic Secrets作者 Stephan T Lavavej 其中提
  • PrivateObject 找不到属性

    我的结构基本上如下所示 abstract class A protected string Identificator get set private void DoSomething DoSomethingSpecific protect
  • C 类型命名约定,_t 或 ALLCAPS

    我一直想知道是否有任何命名约定 例如何时对类型使用全部大写以及何时追加 t 什么时候不使用任何东西 我知道当时 K R 发布了各种有关如何使用 C 的文档 但我找不到任何相关内容 在 C 标准库类型中 t看起来漂亮占主导地位 time t
  • 从点云检测平面集

    我有一组点云 我想测试3D房间中是否有角落 所以我想讨论一下我的方法 以及在速度方面是否有更好的方法 因为我想在手机上测试它 我将尝试使用霍夫变换来检测线 然后我将尝试查看是否有三条线相交 并且它们也形成了两个相交的平面 如果点云数据来自深
  • 是否可以在Linux上将C转换为asm而不链接libc?

    测试平台为Linux 32位 但也欢迎 Windows 32 位上的某些解决方案 这是一个c代码片段 int a 0 printf d n a 如果我使用 gcc 生成汇编代码 gcc S test c 然后我会得到 movl 0 28 e
  • MSChart 控件中的自定义 X/Y 网格线

    我有一个带有简单 2D 折线图的 C Windows 窗体 我想向其中添加自定义 X 或 Y 轴标记 并绘制自定义网格线 例如 以突出显示的颜色 虚线 我查看了 customLabels 属性 但这似乎覆盖了我仍然想显示的默认网格 这是为了
  • 在 C++ 代码 gdb 中回溯指针

    我在运行 C 应用程序时遇到段错误 在 gdb 中 它显示我的一个指针位置已损坏 但我在应用程序期间创建了 10 万个这样的对象指针 我怎样才能看到导致崩溃的一个 我可以在 bt 命令中执行任何操作来查看该指针的生命周期吗 谢谢 鲁奇 据我
  • 在 Qt 中播放通知(频率 x)声音 - 最简单的方法?

    Qt 5 1 或更高版本 我需要播放频率为 x 的通知声音 n 毫秒 如果我能像这样组合音调那就太好了 1000Hz 持续 2 秒 然后 3000Hz 持续 1 秒 最简单的方法是使用文件 WAV MP3 例如如此处所述 如何用Qt播放声音
  • 如何调用与现有方法同名的扩展方法? [复制]

    这个问题在这里已经有答案了 我有这样的代码 public class TestA public string ColA get set public string ColB get set public string ColC get se
  • 不使用放置 new 返回的指针时的 C++ 严格别名

    这可能会导致未定义的行为吗 uint8 t storage 4 We assume storage is properly aligned here int32 t intPtr new void storage int32 t 4 I k
  • 与 Entity Framework Core 2.0 的一对零关系

    我正在使用 C 和 NET Framework 4 7 将 Entity Framework 6 1 3 Code First 库迁移到 Entity Framework Core 我一直在用 Google 搜索 Entity Framew
  • 使用 boost 异步发送和接收自定义数据包?

    我正在尝试使用 boost 异步发送和接收自定义数据包 根据我当前的实现 我有一些问题 tcpclient cpp include tcpclient h include
  • MSVC编译器下使用最大成员初始化联合

    我正在尝试初始化一个LARGE INTEGER在 C 库中为 0 确切地说是 C 03 以前 初始化是 static LARGE INTEGER freq 0 在 MinGW 下它产生了一个警告 缺少成员 LARGE INTEGER Hig
  • Emacs C++,打开相应的头文件

    我是 emacs 新手 我想知道 是否有在头文件 源文件和相应的源文件 头文件之间切换的快捷方式 是否有像通用 emacs 参考卡那样的参考卡 Thanks There s ff find other file 您可以使用以下方法将其绑定到

随机推荐

  • matplotlib 条形图黑色 - 如何删除条形边框

    我正在使用 pyplot bar 但我绘制了很多点 以致条形的颜色始终为黑色 这是因为条形的边框是黑色的 而且条形数量太多 以至于它们都挤在一起 所以您看到的只是边框 黑色 有没有办法删除栏边框以便我可以看到预期的颜色 Set the ed
  • 将日期字符串转换为时间戳以按亚秒精度排序

    我有一个专栏date在 pySpark 数据框中 日期格式如下 2018 02 01T13 13 12 023507 我想将该列中的日期从字符串转换为时间戳 或者我可以根据日期对其进行排序的内容 到目前为止 我已经尝试过以下方法 new d
  • 删除 Airflow Scheduler 日志

    我正在使用 Docker Apache Airflow 版本 1 9 0 2 https github com puckel docker airflow https github com puckel docker airflow 调度程
  • 使用 byte[] 读取大文件会出现错误[重复]

    这个问题在这里已经有答案了 可能的重复 在 C 中对大文件 超过 2GB 进行哈希 SHA1 https stackoverflow com questions 6094306 hash sha1 large files over 2gb
  • .NET 中的时间跨度相乘

    如何在 C 中乘以 TimeSpan 对象 假设变量duration is a TimeSpan http msdn microsoft com en us library system timespan aspx 例如我想要 durati
  • 鼠标悬停在图像上带有文本的 DIV

    好吧 首先 这真的非常类似于http dribbble com http dribbble com主页 以最简单的形式 我有一个图像 我正在尝试对其进行 CSS 处理 以便当我将鼠标悬停在图像上时 会显示一个 DIV 其中包含一些文本和部分
  • 为什么 SpeechRecognizer 突然停止工作?

    我的 Android 应用程序 Xamarin 使用语音识别 这在 Android 8 11 和 12 的智能手机上运行良好 几周以来 我的应用程序的语音识别已停止在 Android 11 上运行 测试了 2 种不同的智能手机 在Andro
  • 如何在 sympy 中求解简并方程组

    我有很多方程组 其中一些未指定 我想找到一个非零解 如果存在 或报告不存在 然而 sympy 似乎在试图找到所有解决方案时停滞不前 这是一个极端的例子 from sympy import A Matrix 0 0 0 0 0 0 0 0 0
  • 确定是否有任何双精度组合从设定总和到目标值

    我在工作中遇到一个问题 让我有点困惑 我需要验证给定的药物剂量可以由药丸剂量大小的任意组合构成 例如 dose 400 0 sizes 15 0 30 0 45 0 400 不能由这些值的任何总和创建 至少我认为这是真的 但是 如果变量更改
  • Java Swing - 半透明组件

    我最近问了一个关于半透明组件因看似未正确更新而导致奇怪的工件的问题 我收到的答案导致伪像消失 但以半透明为代价 解决方案是 对于每个半透明组件 也调用 setOpaque false 函数 这样 Swing 知道它需要重绘这些组件后面的背景
  • 如何在 shell 脚本中将文件作为 stdin 传递

    我有一个 bash 脚本 当像这样调用时可以工作 stats sh rows test file 该程序主要计算行平均值和中位数以及列平均值和中位数 现在对于程序 我想将文件作为标准输入传递 但是当我运行这段代码时它会打印 you have
  • Python 请求没有给我提供与浏览器相同的 HTML

    我正在使用 Python 请求抓取 Wikia 页面 但有一个问题 requests 请求没有给我相同的 HTML因为我的浏览器具有完全相同的页面 为了比较 这是 Firefox 给我的页面 https www dropbox com s
  • python在哪里存储全局变量和局部变量?

    和问题几乎一样本地 全局 静态 自动 寄存器 外部 常量 易失性变量存储在哪里 https stackoverflow com questions 3684760 where the local global static auto reg
  • Vuejs v-model 特殊字符

    你能用 v model 转义特殊字符吗 我在编辑从数据呼叫中收到的文本时遇到了问题 编辑时 this 在文本区域中显示为 this 我知道 v html 但是你能将它与 v model 一起使用吗 如果没有 还有什么选择 v model作品
  • 将动态生成的 GridView 放入 ASP.Net C# 中的特定

    我在 C 的代码隐藏文件中创建了 gridview 我想将该 gridview 放入特定的 div 源文件的 我生成网格的代码是 using System using System Collections Generic using Sys
  • 仅从一个 div 中获取选定的文本

    我有一个包含许多表格和 div 的页面 其中一张带有一些文字 页面在此 div 后还有一个 url 需要 如果用户从 div id comment 中选择文本 div 内的文本以及此 div 中的另一个 div 内的文本 则在按 url 后
  • VScode远程连接错误:进程尝试写入不存在的管道

    我使用vscode和remote ssh连接我的服务器 配置后 我想连接我的主机 但失败了 对话框显示 无法建立与XX的连接 进程试图写入不存在的管道 output 16 45 20 916 Log Level 3 16 45 20 936
  • 如何将 python 中的命令行参数转换为字典?

    我正在编写一个应用程序 它接受任意命令行参数 然后将它们传递给 python 函数 myscript py arg1 1 arg2 foobar arg1 4 然后在 myscript py 中 import sys argsdict so
  • python ssl eof 发生违反协议、wantwriteerror、zeroreturnerror

    我正在使用 gevent 为池运行许多 celery 任务 20 000 也用猴子修补所有任务 这些任务中的每一个都会调用 adwords 等第三方服务来提取数据 由于潜在的 SSL 错误 我的任务不断失败 下面是一些异常的堆栈跟踪 排名不
  • 正则表达式从捕获中排除匹配项

    在 Net 中使用正则表达式 我将有一组类似这样的数据 lt Bunch o Data Here gt where lt 只是新记录的指标 gt 是记录的结尾 这些记录可能会像这样出现 lt Dataset 1 gt