No child items are currently assigned. Use child items to break down this issue into smaller parts.
Link issues together to show that they're related. Learn more.
assigned to @mark
In the original versions (POSIX), the regex was just a wrapped pointer (8 bytes). Adding an invert-flag will automatically bump that to 16 bytes. Not really a problem since we mostly use C++11 regex versions anyhow. However, the plain C++11 regex is around 32 bytes. After tacking on basic validity flags etc, this grows to 40 bytes.
This means that wordRe
is 72 bytes vs 32 bytes for a plain word
. Might reconsider attaching the regex portion of wordRe to a unique_ptr.
changed the description
Hi @mark, as discussed in EP1748, the processorCyclic
might be not excluded. So the regex should be updated to "include" the processorCyclic
.
The regular expressions currently have limited abilities which makes it difficult to combine both include and exclude logic into the same expression. Perl-compatible versions have various types of negative lookback and lookahead, but I don't know how well the C++ versions manage that. Some c++ regex had problems with ECMAScript grammar, so we currently default to posix. The OSspecific POSIX version will be even more limited still.
The expressions that we would/could devise would probably be quite unreadable. Better to have explicit allow/deny lists with wordRes (cf. filtered copying).
mentioned in commit 770f821f305bc21d0e3961f7e83f140186513739
mentioned in commit f602d318b8e0cd4b0be9cae8adea6414f4a0fc6f
changed milestone to %v2112
mentioned in commit e0929809
closed