gpt4 book ai didi

c# - 相同的字符转义序列

转载 作者:行者123 更新时间:2023-11-30 18:04:25 24 4
gpt4 key购买 nike

我想匹配大括号括起来的数字,但大括号本身是转义序列,我希望匹配从最后一个大括号开始,当它们正好是奇数时。

{0}    OK
{{0} NOT OK
{{{0} OK
{{{{0} NOT OK

我有这样的前瞻/后视断言:

(?<!\{\{)

但这与重复不匹配 {{{0} 而且我实际上不确定这是否可以在不涉及组和限定符的情况下完成。 (如果断言不是匹配的一部分,我会喜欢它)

匹配必须能够出现在字符串中的任何位置。

这是迄今为止我得到的最好的

(?<=^|[^\{]|\{\{)\{(?=\w)

除此部分外,它在任何地方都成功 {{{{0} 在大括号对上放置量词似乎没有任何效果。根据docs零宽度正向回顾断言的子表达式不应该受到限制,但它没有达到预期的效果。

最佳答案

以你的尝试为基础,试试这个:

(?<!\{)\{(?:\{\{)*(?=\w)

解释:

  • (?<!\{)确保没有 {前面
  • \{匹配一个 {
  • (?:\{\{)*匹配零次或多次出现的 {{ (所以总的 { 总是奇数)
  • (?=\w)确保后面有一些单词字符

关于c# - 相同的字符转义序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6167759/

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