仅提取正则表达式“表达式”的特定部分

时间:2013-03-12 19:11:24

标签: c++ regex pattern-matching string-literals

我有一个表达式列表,我想验证,并提取。的特定部分 允许这些表达式具有以下任意组合:

  • 字符串文字(可能已转义,但不一定),用单引号
  • 表示
  • 任意数量的字符,它们不是字符串文字和
    不是行结尾字符,用分号
  • 表示

有效表达式将在冒号后开始,以分号结尾 有效表达式的一个例子是:

: This is an *expression* 'with' and 'without \'escaped\' string literals', 
which ends with a semicolon!;

在那个表达中,我想提取:

  • This is an *expression*
  • 'with'
  • and
  • 'without \'escaped\' string literals'
  • , which ends with a semicolon!

这可能吗?

1 个答案:

答案 0 :(得分:1)

调用RectangleEquals,答案是std :: regex re _(“'(?:\\。| [^'])*'| [^'] +”);