正则表达式匹配多行

时间:2015-01-06 19:59:06

标签: javascript regex

我的目标是括号内的匹配文字(包括它们)。这种模式工作正常:/(\-?\(.*\))/gm,虽然它不适用于多行。

任何想法如何“抓住”

(INDISTINCT ANNOUNCEMENT
          OVER PA)

以下是样本:

365
00:22:20,105 --> 00:22:21,772
         (CLAMOURING)

366
00:22:21,774 --> 00:22:25,009
      (INDISTINCT ANNOUNCEMENT
      OVER PA)

367
00:22:55,340 --> 00:22:58,509
      (INDISTINCT ANNOUNCEMENT
      OVER PA)

368
00:23:10,655 --> 00:23:11,389
      SARAH: Excuse me.

Example on regex101.com

2 个答案:

答案 0 :(得分:2)

您可以使用此正则表达式匹配()之间的内容,包括换行符:

/\([\s\S]*?\)/g

如果Javascript中没有dotall标志,我们会使用[\s\S]来匹配换行符。

RegEx Demo

答案 1 :(得分:0)

如评论中所述,.与换行符不匹配。但是,您可以使用[^)]来匹配除)之外的所有内容,包括换行符。 e.g。

\([^)]*\)

Demo