正则表达式抓住几乎整个字符串

时间:2014-07-21 02:10:56

标签: regex

我有以下数据:

  

今天的跟踪日志(F812)发布于1500,明天将在0700有一个新日志(F813)。

我试图在每个括号之间进行匹配,而不是几乎匹配整个字符串。

 \((.*)\)

我做错了什么?

2 个答案:

答案 0 :(得分:4)

*greedy量词;尽可能多地消费。为了使它非贪婪使用*?。一旦你指定问号,你就说明了(不要贪婪.. ,一旦找到) ...停止,你就完成了。)

\((.*?)\)
     ^

Live Demo

答案 1 :(得分:0)

设计正则表达式模式时要记住三件事:

  1. 必须出现的东西
  2. 不得出现某些内容
  3. 可能会出现一些事情(以及多少次)
  4. 通常匹配括号和引号等对。使用以下模式:

    \(([^)]+)\)
    

    "("和")"是"必须出现""他们之间是#34;一定不能出现"" (意味着你不希望看到一个")"在它之前。观看此演示:http://rubular.com/r/Ki9puMZmBJ