gpt4 book ai didi

c++ - 从句点和逗号之前的字符串中删除空格

转载 作者:搜寻专家 更新时间:2023-10-31 01:33:42 24 4
gpt4 key购买 nike

我可以有一个像这样的字符串:

During this time , Bond meets a stunning IRS agent , whom he seduces .

我需要删除整个字符串中逗号前和句点前的多余空格。我尝试将其放入一个字符 vector 中,但如果当前字符为“”且后续字符为“。或“,”但它不起作用。我知道有一种简单的方法可以使用 trim()、find()erase() 或某种 regex但我不是最熟悉正则表达式的。

最佳答案

解决方案可能是(使用正则表达式库):

std::string fix_string(const std::string& str) {
static const std::regex rgx_pattern("\\s+(?=[\\.,])");
std::string rtn;
rtn.reserve(str.size());
std::regex_replace(std::back_insert_iterator<std::string>(rtn),
str.cbegin(),
str.cend(),
rgx_pattern,
"");
return rtn;
}

此函数接受输入字符串并“修复空格问题”。

Here a demo

关于c++ - 从句点和逗号之前的字符串中删除空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40937557/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com