From dfe3a7d9fc57911b920eb3bc5f7fe7d4b7397823 Mon Sep 17 00:00:00 2001 From: Georg Baum Date: Sun, 22 Nov 2015 17:43:10 +0100 Subject: [PATCH] Fix InsetListings::getCaption() for std::regex Back references in the format string of regex_replace use the syntax $n both in std::regex and in boost::regex for the default format. Boost seems to support the syntax \n in addition, but it is not documented at http://www.boost.org/doc/libs/master/libs/regex/doc/html/boost_regex/format.html. Therefore it is a good idea to use $n also for boost. --- src/insets/InsetListings.cpp | 2 +- src/tests/check_ListingsCaption.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/insets/InsetListings.cpp b/src/insets/InsetListings.cpp index 9c7daf2219..91125d8895 100644 --- a/src/insets/InsetListings.cpp +++ b/src/insets/InsetListings.cpp @@ -418,7 +418,7 @@ docstring InsetListings::getCaption(OutputParams const & runparams) const // // NOTE that } is not allowed in blah2. regex const reg("(.*)\\\\label\\{(.*?)\\}(.*)"); - string const new_cap("\\1\\3},label={\\2"); + string const new_cap("$1$3},label={$2"); return from_utf8(regex_replace(to_utf8(cap), reg, new_cap)); } diff --git a/src/tests/check_ListingsCaption.cpp b/src/tests/check_ListingsCaption.cpp index 2df43e8cdc..874e3d67b8 100644 --- a/src/tests/check_ListingsCaption.cpp +++ b/src/tests/check_ListingsCaption.cpp @@ -23,7 +23,7 @@ string test_ListingsCaption(string const & cap) // // NOTE that } is not allowed in blah2. regex const reg("(.*)\\\\label\\{(.*?)\\}(.*)"); - string const new_cap("\\1\\3},label={\\2"); + string const new_cap("$1$3},label={$2"); return regex_replace(cap, reg, new_cap); }