正则表达式匹配回车和换行中的数字

时间:2017-09-13 05:10:24

标签: c++ regex boost

匹配\ r \ n之间的所有内容。我想只匹配\ r \ n之间的数字,并用""替换。

regex: [^\r\n\d$\r\n]
Matching: 
     abc\r\n123\r\nabc\r\n
Doesnot match: 
     \r\n\r\n
     \r\nasaas\r\n

正则表达式说以上所有都匹配。 这在从套接字接收的分组数据中删除块长度时很有用。我想删除分块数据包中的数据包长度并准备一个正确的XML。

1 个答案:

答案 0 :(得分:-3)

从纯正的正则表达式角度来看,他们自己隔离数字:我想你想要这个:

(\n\d+\n)|(^\d+\n)|(\n\d+$)

作为C ++字符串:"(\\n\\d+\\n)|(^\\d+\\n)|(\\n\\d+$)"或简称R"((\n\d+\n)|(^\d+\n)|(\n\d+$))"

<强>更新即可。正如其他人所指出的,正则表达式可能不是解析HTTP流的最合适的工具。但从正则表达的角度来看,我会坚持这个答案。