如何使用正则表达式在字符串中找到第一次出现的“&”?

How do I find the first occurrence of "&" in a string using regex?

我有一组数据,每一行都有不同数量的&。如何使用正则表达式查找并匹配每行中的第一个 &?

示例数据:

  1. 文档 & 已保存(错误授权)
  2. 单据 & 无法在此交易中处理,结算类型为 &
  3. 主要 WBS 元素 & 的收入由 &
  4. 的替换确定

我在 RPA 系统上工作,当我将 & 作为正则表达式时,它匹配所有出现的 & 而不是第一个。

想知道你们有没有其他选择。

谢谢!

由于您使用的正则表达式引擎是 .NET,您可以使用基于正后视的解决方案:

(?<=\A[^&]*)&

参见regex demo

详情

  • (?<=\A[^&]*) - 字符串中紧接其前面的位置
    • \A - 字符串开头
    • [^&]* - &
    • 以外的 0 个或更多字符
  • & - 一个 & 字符。