将双空格替换为单空格

2023-11-29

如何使用 C++ 将双空格替换为单空格

ex:

"1  2  3  4  5" => "1 2 3 4 5"

这就是我到目前为止所做的:

int _tmain(int argc, _TCHAR* argv[])
{
    string line;
    ifstream myfile(myFile);
    if(myfile.is_open())
    {
        cout<<"File Opened ...\n";
        while(myfile.good())
        {
            getline(myfile,line);
            splitLine(line);
            //cout<<line<<endl;
        }
    }
    else
        cout<<"File Not Found ...\n";
    myfile.close();
    return 0;
}

void splitLine(string line)
{
    int loc;
    cout<<line<<endl;
    while(loc = line.find(" "))
    {
        cout<<loc<<endl;
    }
}

在 splitLines 代码的 while 循环中,使用此代码。

  while((loc = line.find("  ")) != std::string::npos) //Two spaces here
  {
       line.replace(loc,2," "); //Single space in quotes
  }
  cout << line << endl;

就是这样。我还没有尝试过,请告诉我是否有效。

正如 Fred 指出的,在 splitLines 函数中使用引用传递。上述解决方案是次正规的,复杂度为 O(n^2)。这个比较好。

  int loc = -1;
  while((loc = line.find("  ",loc+1)) != std::string::npos) //Two spaces here
  {
       line.replace(loc,2," "); //Single space in quotes
  }
  cout << line << endl;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将双空格替换为单空格 的相关文章

  • 在模板类中声明模板友元类时出现编译器错误

    我一直在尝试实现我自己的链表类以用于教学目的 我在迭代器声明中指定了 List 类作为友元 但它似乎无法编译 这些是我使用过的 3 个类的接口 Node h define null Node
  • 根据属性的类型使用文本框或复选框

    如果我有这样的结构 public class Parent public string Name get set public List
  • 类型中的属性名称必须是唯一的

    我正在使用 Entity Framework 5 并且有以下实体 public class User public Int32 Id get set public String Username get set public virtual
  • 随着时间的推移,添加到 List 变得非常慢

    我正在解析一个大约有 1000 行的 html 表 我从一个字符串中添加 10 个字符串 td 每行到一个list td
  • free 和 malloc 在 C 中如何工作?

    我试图弄清楚如果我尝试 从中间 释放指针会发生什么 例如 看下面的代码 char ptr char malloc 10 sizeof char for char i 0 i lt 10 i ptr i i 10 ptr ptr ptr pt
  • 如何在 C++ 中标记字符串?

    Java有一个方便的分割方法 String str The quick brown fox String results str split 在 C 中是否有一种简单的方法可以做到这一点 The 增强分词器 http www boost o
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • 访问外部窗口句柄

    我当前正在处理的程序有问题 这是由于 vista Windows 7 中增强的安全性引起的 特别是 UIPI 它阻止完整性级别较低的窗口与较高完整性级别的窗口 对话 就我而言 我想告诉具有高完整性级别的窗口进入我们的应用程序 它在 XP 或
  • 两个类可以使用 C++ 互相查看吗?

    所以我有一个 A 类 我想在其中调用一些 B 类函数 所以我包括 b h 但是 在 B 类中 我想调用 A 类函数 如果我包含 a h 它最终会陷入无限循环 对吗 我能做什么呢 仅将成员函数声明放在头文件 h 中 并将成员函数定义放在实现文
  • C# xml序列化必填字段

    我需要将一些字段标记为需要写入 XML 文件 但没有成功 我有一个包含约 30 个属性的配置类 这就是为什么我不能像这样封装所有属性 public string SomeProp get return someProp set if som
  • C 编程:带有数组的函数

    我正在尝试编写一个函数 该函数查找行为 4 列为 4 的二维数组中的最大值 其中二维数组填充有用户输入 我知道我的主要错误是函数中的数组 但我不确定它是什么 如果有人能够找到我出错的地方而不是编写新代码 我将不胜感激 除非我刚去南方 我的尝
  • LINQ:使用 INNER JOIN、Group 和 SUM

    我正在尝试使用 LINQ 执行以下 SQL 最接近的是执行交叉联接和总和计算 我知道必须有更好的方法来编写它 所以我向堆栈团队寻求帮助 SELECT T1 Column1 T1 Column2 SUM T3 Column1 AS Amoun
  • 复制目录下所有文件

    如何将一个目录中的所有内容复制到另一个目录而不循环遍历每个文件 你不能 两者都不Directory http msdn microsoft com en us library system io directory aspx nor Dir
  • 在 WPF 中使用 ReactiveUI 提供长时间运行命令反馈的正确方法

    我有一个 C WPF NET 4 5 应用程序 用户将用它来打开某些文件 然后 应用程序将经历很多动作 读取文件 通过许多插件和解析器传递它 这些文件可能相当大 gt 100MB 因此这可能需要一段时间 我想让用户了解 UI 中发生的情况
  • C++ 继承的内存布局

    如果我有两个类 一个类继承另一个类 并且子类仅包含函数 那么这两个类的内存布局是否相同 e g class Base int a b c class Derived public Base only functions 我读过编译器无法对数
  • 使用特定参数从 SQL 数据库填充组合框

    我在使用参数从 sql server 获取特定值时遇到问题 任何人都可以解释一下为什么它在 winfom 上工作但在 wpf 上不起作用以及我如何修复它 我的代码 private void UpdateItems COMBOBOX1 Ite
  • C# 使用“?” if else 语句设置值这叫什么

    嘿 我刚刚看到以下声明 return name null name NA 我只是想知道这在 NET 中叫什么 是吗 代表即然后执行此操作 这是一个俗称的 条件运算符 三元运算符 http en wikipedia org wiki Tern
  • DotNetZip:如何提取文件,但忽略zip文件中的路径?

    尝试将文件提取到给定文件夹 忽略 zip 文件中的路径 但似乎没有办法 考虑到其中实现的所有其他好东西 这似乎是一个相当基本的要求 我缺少什么 代码是 using Ionic Zip ZipFile zf Ionic Zip ZipFile
  • Mono 应用程序在非阻塞套接字发送时冻结

    我在 debian 9 上的 mono 下运行一个服务器应用程序 大约有 1000 2000 个客户端连接 并且应用程序经常冻结 CPU 使用率达到 100 我执行 kill QUIT pid 来获取线程堆栈转储 但它总是卡在这个位置
  • 现代编译器是否优化乘以 1 和 -1

    如果我写 template

随机推荐

  • 我在 Heroku 上的 Django 应用程序中添加了 SECRET_KEY 配置变量,但现在它无法在本地工作

    我将我的密钥更改为 Heroku 应用程序上的环境变量 我改变了它 因为我发现将密钥保存在settings py是一个安全风险 但是 现在当我使用时它无法在本地工作python manage py runserver 它给出了有关密钥的错误
  • 为什么在 WIN8 下使用 Touch Injection API 时只能注入一次触摸?

    我正在尝试测试触摸注入 API 以便在使用 Windows 8 时注入多个触摸 为此 我创建 5 个联系人 然后模拟悬停 然后拖动并释放 这对于一键接触来说效果很好 然而 当我再添加 4 个联系人时 没有任何变化 即它产生的结果与只有一个联
  • 用户通知未显示(iOS 10)

    我无法开火UserNotification在 iOS 10 中 我将从我的代码开始 BOOL application UIApplication application didFinishLaunchingWithOptions NSDic
  • 是否可以在 GDB 调试器中“跳转”/“跳过”?

    在 GDB 中调试时是否可以跳转到代码 可执行文件中的某个位置 地址 假设我有类似以下内容的内容 int main caller f1 f1 breakpoint f2 want to skip f2 and jump caller f2
  • 无法在 bash 中执行双括号中的命令

    为了保持一致 我尝试在所有 if 语句中使用双括号 然而 当我要检查我想要运行的命令的返回值时 我确实遇到了问题 在测试了几种创建 if 语句的方法之后 我发现只有没有括号才能执行命令 以下不起作用 if command then echo
  • Rustc/LLVM 为 aarch64 生成错误代码,opt-level=0

    我有两个文件被组装 编译 链接到简约内核中 start s set CPACR EL1 FPEN 0b11 lt lt 20 set BOOT STACK SIZE 8 1024 global boot stack global start
  • geom_bar(aes = ) 和position_dodge(width = ) 中的“width =”以什么单位呈现?

    我想在其中一个躲避的栏上专门放置一些东西 我怎样才能做到这一点 在下面的示例中 我想在条形图的 cat3 组中的 A3 上专门分层一些内容 我知道 cat3 的 x 3 但由于闪避宽度和条宽度的相互依赖性 似乎很难瞄准该条 有没有可以用来计
  • Gradle Java 应用程序的 Proguard 示例

    我是混淆新手 并试图弄清楚如何混淆使用 gradle 创建的 java 应用程序 这个想法是混淆 gradle 构建后创建的可运行 jar 这是 gradle 文件 plugins Apply the java plugin to add
  • 如何在 C# 中连接 WAV 文件

    我有 2 个 wav 文件 我想将它们连接成一个带有两个音轨的文件 是否有任何用于该任务的 API 或 NET 中的一些内置命令 我可以使用它们以某种天才的方式来使该任务成为可能 非常感谢您的帮助 如果我没有记错的话 您可以将第二个文件中的
  • 未来的建造者会在每个设定状态上不断重建

    我正在构建一个使用 api 的应用程序 并且我正在使用 future 构建器来获取数据 但问题是当状态更改时它会重建 我想防止这种情况发生 Thanks 尝试使用这个 class Example extends StatefulWidget
  • 将 XmlHttpRequest 解析为 XmlListModel

    我想将检索到的 xmlHttpRequest 对象放入 XMLListModel 中 我正在使用 qml 主要目标是评估我获得的 xml 并显示列表中的条目 如果有更好的方法 请告诉我 我在这里找到了一个用于分析 xml 的 解决方案 ht
  • Android Studio无法加载项目

    更新最新的Android studio后 我无法再加载项目了 并且错误消息 无法加载项目 com intellij ide plugins PluginManager StartupAbortedException 致命 初始化 com i
  • 将 .XLSX 转换为 Google Sheet 并移动转换后的文件的脚本

    我知道可以使用脚本和驱动 API 将 Excel 文件转换为 Google Sheets 但我正在寻找脚本来转换 Excel 工作表并将转换后的文件移动到其他文件夹 所以需要的步骤如下 将 Excel xls xlsx 从文件夹 A 转换为
  • 即使我运行程序时也获得不同的线程顺序

    有人可以告诉我线程开始执行的顺序吗 我写了下面的代码 class NewThread implements Runnable Thread t NewThread creating a second thread t new Thread
  • 值类中的验证

    SIP 15 意味着可以使用值类别来定义新的数字类别 例如正数 是否可以在没有构造函数的情况下编写底层 gt 0 的约束 而不必调用单独的方法来验证约束 即 创建此类的有效实例是简洁的 如果值类具有构造函数的概念 那么这可能是进行如下验证的
  • Laravel 资源 URL 忽略 https

    我在模板中使用以下代码来加载 CSS 文件 如果我在本地计算机上通过 https 查看页面 则指向 app css 文件的链接也是 https 但是在我的实时服务器上 这种情况不会发生 如果你查看现场直播通过 https 并查看源代码 您可
  • 延续和回调有什么区别?

    我一直在浏览整个网络 寻找有关延续的启示 令人难以置信的是 最简单的解释竟然能让像我这样的 JavaScript 程序员完全困惑 当大多数文章用Scheme 中的代码解释延续或使用monad 时尤其如此 现在我终于认为我已经理解了延续的本质
  • 如何在 pyspark 数据框中创建连续数字列?

    我想创建带有连续数字的列pyspark从指定编号开始的数据帧 例如 我想添加列A到我的数据框df这将从5到我的数据帧的长度 增加一 所以5 6 7 length df 一些简单的解决方案使用pyspark方法 您可以使用以下方法执行此操作r
  • 如何从 php API 运行 casperJS 脚本

    我有一个 casperJS 脚本 通过命令行运行时会返回 JSON 我想最好在 PHP 中创建一个 API 它在命令行 casperJS Sample js 中运行脚本并返回 JSON 作为结果 您可以使用php casperjs库是一个简
  • 将双空格替换为单空格

    如何使用 C 将双空格替换为单空格 ex 1 2 3 4 5 gt 1 2 3 4 5 这就是我到目前为止所做的 int tmain int argc TCHAR argv string line ifstream myfile myFil