为什么Visual Studio正在清除我的一串反斜杠
why is Visual Studio is ridding my string of back-slashes
我将以下字符串传递给一个函数,因此
void func(string expr)
{
regex pattern(expr);
}
func( "(d{1,2}.+d{2})" )
然而,通过visualstudio调试器,我发现存储的regex模式实际上是(d{1,2}.+d{2})
,这导致我的regex完全故障。为什么会发生这种情况,我该如何解决。
这些是反斜杠,默认情况下是转义字符。将它们视为文字。。。
试试这个(在C++11中(。R表示原始字符串,其形式为R "delimiter( raw_characters )delimiter"
,其中分隔符可以是您喜欢的任何字符序列。在这种情况下,我只使用了括号。
func( R"((d{1,2}.+d{2}))" )
或者在任何版本中都是这样:
func( "(\d{1,2}\.+\d{2})" )
相关文章:
- C++为一串单词添加空格
- 为什么Visual Studio正在清除我的一串反斜杠
- 如何将内存中的位转换为一串和零?
- 如何返回一串字母数字字符中的最大值(例如-1A003B3)?
- 创建一个程序,该程序将一串数字作为输入,并输出偶数和奇数的总和
- C++ 如何对一串数字求平均值
- 从网络数据包复制一串 wchar 时访问冲突
- C - 将文本文件读为一串单词,然后将字符串分为向量
- 我如何在一串随机生成的字母I C 中查找一个单词
- 从一串数字C++创建一个数字序列
- 将一串十六进制存储到字符中
- 在另一个字符串中查找一串数字
- 将一串数字分解为26以下数字的计数方法
- 把一串单词解析成一组单词
- 将一串数字转换为整数向量 c++
- 将一串单词视为数组 (C++)
- 使用算术记数法横向排列一串字符
- 我有编译器的情况。当我运行代码来去除一串特殊字符时,它在一个编译器中运行,但在另一个编译器中不运行?
- 将一串数字转换为任何形式的整数
- 如何压缩一串数字