我在网上找个例子
std::string testString = "SDFSDF\r\n Hello World ! GoodBye World\r\n4645645\r\n";
std::string TrimLeft = "([\\s\\r\\n\\t]*)(\\w*.*)";
boost::regex expression(TrimLeft);
testString = boost::regex_replace( testString, expression, "$2" );上面是可以解析出来的 SDFSDFHello World ! GoodBye World4645645。但是,把字符串textString 保存到文件中,从文件读取后在解析,解析的结果就不对 了
出来的结果还是 原来那个字符串 SDFSDF\r\n Hello World ! GoodBye World\r\n4645645\r\n
不知道哪里出问题了,不明白这是为什么?
std::string testString = "SDFSDF\r\n Hello World ! GoodBye World\r\n4645645\r\n";
std::string TrimLeft = "([\\s\\r\\n\\t]*)(\\w*.*)";
boost::regex expression(TrimLeft);
testString = boost::regex_replace( testString, expression, "$2" );上面是可以解析出来的 SDFSDFHello World ! GoodBye World4645645。但是,把字符串textString 保存到文件中,从文件读取后在解析,解析的结果就不对 了
出来的结果还是 原来那个字符串 SDFSDF\r\n Hello World ! GoodBye World\r\n4645645\r\n
不知道哪里出问题了,不明白这是为什么?
在文件中应该是
SDFSDF
Hello World ! GoodBye World
4645645应该是这样的,而且你要保存成windows的文本格式。windows的换行带有\r,linux的不带\r
解析后 是这样
SDFSDF
Hello World ! GoodBye World
4645645
但是 从文本里 解析这个字符串 就没变化,只是把字符串读出来了,没有解析