- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
如 standard 中所述:
match_prev_avail
: --first 是一个有效的迭代器位置。设置后,会导致 match_not_bol 和 match_not_bow 被忽略
但我运行以下代码并得到:
#include <regex>
#include <iostream>
using namespace std;
int main()
{
regex re0("^bcd");
string str = "abcd";
std::string::iterator start = str.begin() + 1;
cout << regex_search(start, str.end(), re0, regex_constants::match_not_bol) << endl;
cout << regex_search(start, str.end(), re0, regex_constants::match_prev_avail) << endl;
cout << regex_search(start, str.end(), re0, regex_constants::match_prev_avail | regex_constants::match_not_bol) << endl;
}
输出:
0
1
0
match_prev_avail
似乎被 match_not_bol
覆盖了。
最佳答案
您似乎在 clang 中发现了一个错误。 (在此处归档:https://bugs.llvm.org/,因为它似乎尚未报告)
我检查了 MSVC 1914,它给出了
0
0
0
与 GCC 4.9.2 相同(使用 cpp.sh 检查)
我重新检查了标准 (N4810) 的 .pdf 格式,这在 30.5.2 中与 cppreference 匹配州。
match_prev_avail: --first is a valid iterator position. When this flag is set the flags match_not_bol and match_not_bow shall be ignored by the regular expression algorithms (30.11) and iterators (30.12)
关于c++ - clang 中 regex_constants 的错误实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56505648/
我有一个函数检查表达式是否与正则表达式匹配,并返回一个 boost::regex_constants::error_type,它会在出现异常时记录错误: boost::regex_constants:
我正在使用 std::regex,在阅读 std::regex_constants 中定义的各种常量时,我遇到了 std::optimize ,阅读它,听起来它在我的应用程序中很有用(我只需要一个
如 standard 中所述: match_prev_avail: --first 是一个有效的迭代器位置。设置后,会导致 match_not_bol 和 match_not_bow 被忽略 但我运行
我是一名优秀的程序员,十分优秀!