-1

我正在尝试取出括号内的内容。例如,如果字符串是“(blah blah) This is stack(over)flow”,我只想取出“(blah blah)”,但不理会“(over)”。我正在努力

    /\A\(.*\)/ 

但返回“(等等等等)这是堆栈(结束)”,我确定它为什么会返回它。

4

1 回答 1

1

最简单的修复:

/\A\(.*?\)/

通常,*它会尽可能多地匹配,所以它会一直匹配到最后)一行。这称为“贪婪”匹配。放在/ /?之后使它们贪婪,它们将匹配最短的字符串。+*?

但请注意,这不适用于嵌套括号。那比较复杂。鉴于您的示例,我假设这是一个非常简单的临时格式,其中嵌套不是问题。

于 2013-01-17T20:50:59.483 回答