-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Closed
Labels
bugSomething isn't workingSomething isn't workingfixedSomething works now, yay!Something works now, yay!regexmeow is a substring of homeownermeow is a substring of homeowner
Description
Describe the bug
With R"#( *((<<)|(\[)|(.+)))#" pattern and " [<</Category/Export>>]>>" input regex should give the first match as (\[), but gives (.+)
Command-line test case
d:\Temp2>type repro.cpp
#include <iostream>
#include <string>
//#define TRY_BOOST
#ifdef TRY_BOOST
#include <boost/regex.hpp>
using namespace boost;
#else
#include <regex>
using namespace std;
#endif
int main() {
std::string s(" [<</Category/Export>>]>>");
regex regex(R"#( *((<<)|(\[)|(.+)))#");
match_results<std::string::const_iterator> match;
regex_search(s, match, regex);
for (std::size_t i = 0, m = match.size(); i != m; i++) {
std::cout << i << ": " << std::string(match[i].first, match[i].second) << "\n";
}
return 0;
}
d:\Temp2>cl /EHsc /W4 /WX .\repro.cpp
Microsoft (R) C/C++ Optimizing Compiler Version 19.27.29009.1 for x86
Copyright (C) Microsoft Corporation. All rights reserved.
repro.cpp
Microsoft (R) Incremental Linker Version 14.27.29009.1
Copyright (C) Microsoft Corporation. All rights reserved.
/out:repro.exe
repro.obj
d:\Temp2>.\repro.exe
0: [<</Category/Export>>]>>
1: [<</Category/Export>>]>>
2:
3:
4: [<</Category/Export>>]>>
Expected behavior
0: [
1: [
2:
3: [
4:
STL version
Microsoft Visual Studio Professional 2019 Preview
Version 16.7.0 Preview 3.1
Additional context
This item is also tracked on Developer Community as DevCom-326044 and by Microsoft-internal VSO-678814 / AB#678814.
See also #405
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingfixedSomething works now, yay!Something works now, yay!regexmeow is a substring of homeownermeow is a substring of homeowner