gpt4 book ai didi

c++ - 如何在正则表达式中匹配 "["和 "]"?

转载 作者:太空狗 更新时间:2023-10-29 20:40:13 25 4
gpt4 key购买 nike

如何在正则表达式中匹配“[”和“]”?这一个不起作用:[\\[\\]]我认为 \\ 可以使用特殊字符。我想在一个类中匹配它们。

最佳答案

这取决于您的引擎,以及您是要匹配特定括号(左括号还是右括号),还是要匹配一类括号。

  • \[ 匹配左括号
  • \] 匹配右括号
  • [][] 匹配一个作为左括号或右括号的字符(.NET、Perl、PCRE、Python)
  • []\[]同上(Java和上面4个引擎)
  • [[\]]同上(JavaScript和上面的4个引擎)
  • [\]\[] 同上(Ruby,所有引擎)

避免反斜杠汤

少数语言(例如 Java)要求您在正则表达式字符串中转义反斜杠,从而导致 \\[ 和其他难看的变体。幸运的是,大多数语言都为您提供了避免转义反斜杠的方法。

  • "\[" 可以在 JavaScript、PHP、Perl、Ruby、VB.NET、VBScript 中使用
  • C# 中的@"\["(逐字字符串)
  • r"\["(Python 中的原始字符串)
  • R"(\])" 或 C++11 中的 R"foo(\])foo"(原始字符串文字)。原始字符串位于括号之间,可以用可选的定界符(第二个版本中的 foo)包围。

引用

Interesting Character Classes

关于c++ - 如何在正则表达式中匹配 "["和 "]"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24955955/

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