|
a/src/rcldb/rclabsfromtext.cpp |
|
b/src/rcldb/rclabsfromtext.cpp |
|
... |
|
... |
52 |
// Things that we don't want to repeat in a displayed snippet.
|
52 |
// Things that we don't want to repeat in a displayed snippet.
|
53 |
// e.g. > > > > > >
|
53 |
// e.g. > > > > > >
|
54 |
static const string punctcls("[-<>._+,#*=|]");
|
54 |
static const string punctcls("[-<>._+,#*=|]");
|
55 |
static const string punctRE = "(" + punctcls + " *)(" + punctcls + " *)+";
|
55 |
static const string punctRE = "(" + punctcls + " *)(" + punctcls + " *)+";
|
56 |
static std::regex fixfrag_re(punctRE);
|
56 |
static std::regex fixfrag_re(punctRE);
|
|
|
57 |
static const string punctRep{"$2"};
|
57 |
static string fixfrag(const string& infrag)
|
58 |
static string fixfrag(const string& infrag)
|
58 |
{
|
59 |
{
|
59 |
return std::regex_replace(neutchars(infrag, cstr_nc), fixfrag_re, "$2");
|
60 |
return std::regex_replace(neutchars(infrag, cstr_nc), fixfrag_re, punctRep);
|
60 |
}
|
61 |
}
|
61 |
|
62 |
|
62 |
|
63 |
|
63 |
// Fragment descriptor. A fragment is a text area with one or several
|
64 |
// Fragment descriptor. A fragment is a text area with one or several
|
64 |
// matched terms and some context. It is ranked according to the
|
65 |
// matched terms and some context. It is ranked according to the
|