gpt4 book ai didi

C# 正则表达式忽略转义字符

转载 作者:行者123 更新时间:2023-11-30 21:19:01 40 4
gpt4 key购买 nike

我有一个这样的字符串,它是用 | 分隔的,中间可以包含任何字符:

"one two|three four five|six \| seven eight|nine"

我想找到一个返回的正则表达式:

one two
three four five
six | seven eight
nine

我可以考虑如何执行此操作,但我对正则表达式的了解还不够。我基本上想要匹配,直到到达前面没有 \|。我该怎么做呢?我知道有一个回溯器,但我不知道该怎么做。

最佳答案

基本上你想找到这种模式的实例:

@"([^|\\]|\\.)+"

这匹配:

  1. [^|\\] — 除了竖线或反斜杠之外的任何字符。
  2. \\. — 用反斜杠转义的任何字符。
  3. (...|...)+ — 一个或多个前面的(转义)字符。

\\. 结构很好,因为它可以让您转义任何字符,尤其是其他反斜杠。这使您可以在字符串末尾使用反斜杠,例如:

"backslash \\|forward slash /|pipe \|"

关于C# 正则表达式忽略转义字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3965201/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com