我有一个长成这样的字符串
text here++ text
+ text text
+ text
text text
我想把行首的“+”替换为“-”,使得显示效果如下:
text here++ text
- text text
- text
text text
我正在尝试使用类似这样的正则表达式:
string text = "the-above-text";
regex reg("^\\++.*$");
text = regex_replace(text, reg, "-");
但是这个 ^ 只匹配文本的开头,而不是行的开头。
我已经谷歌了几个小时,似乎没有办法使引擎在多行模式下工作。
有没有办法可以做到这一点?或者是否有任何支持多行 ^ 和 $? 的更新的c ++标准? 我正在使用g ++
谢谢!
regex reg("(?:^|\n)\++.*$")
。C++正则表达式中没有多行模式。 - Wiktor Stribiżew+
符号?如果是后者,请使用https://ideone.com/leKxL3。 - Wiktor Stribiżewregex_replace
。 - xskxzr