【问题标题】:What does regex expression match pattern "\\[.*\\]" mean? [duplicate]正则表达式匹配模式“\\[.*\\]”是什么意思? [复制]
【发布时间】:2016-12-28 06:45:55
【问题描述】:

我是正则表达式的新手。正则表达式匹配模式“\[.*\]”是什么意思?

如果我有一个像“Hello [Here]”这样的文本,那么在匹配中返回成功。并且匹配包含 [Here]。

我读到了:

. 表示除 \n (换行符)以外的 Any,
* 表示 0 次或多次

我不明白“\”。它认为这只是“\”的转义序列。

那么,表达式“\[.*\]”是否试图匹配像\[Any text\] 这样的模式?

【问题讨论】:

  • 您的模式中没有\.\[ 匹配 [ 文字,因为正则表达式中的 [ 是字符类,它需要转义以匹配左方括号。
  • 是表达式 "[.*]" 试图匹配 [Any text] 之类的模式? 是的。它将匹配包含在方括号内的文本。但是当有嵌套括号时会失败。

标签: c# regex pattern-matching


【解决方案1】:

是的,你是对的。它将匹配[] 中包含的任何字符。 .* 暗示 [] 中包含任何字符或不包含任何字符。 你也应该试试这个link,这是一个非常有用的正则表达式工具。您可以输入正则表达式模式并轻松检查匹配项。

【讨论】:

  • 谢谢!但是表达式“\[.*\]”中的反斜杠(\)有什么意义呢?
  • 反斜杠强制一个特殊的正则表达式字符按字面意思解释。
  • 这是一个很好的正则表达式站点:misc.yarinareth.net/regex.html
【解决方案2】:

我在regexr 上试过这个,这是一个屏幕截图:

【讨论】:

    猜你喜欢
    • 2015-07-21
    • 1970-01-01
    • 2014-09-02
    • 2016-06-10
    • 2014-12-06
    • 1970-01-01
    • 1970-01-01
    • 2012-06-10
    • 1970-01-01
    相关资源
    最近更新 更多