重复字符串以填充多个空格

Posted

技术标签:

【中文标题】重复字符串以填充多个空格【英文标题】:repeat string to fill a number of spaces 【发布时间】:2014-03-13 16:41:01 【问题描述】:

首先我想为糟糕的标题道歉,我不知道如何总结。

我正在创建一个简单的密码程序,该程序使用重复的密钥以适应明文长度。

所以如果密钥是“WATER”而明文是“PRINGLE”,那么密钥会像这样循环; “水”

我在这样做时遇到了麻烦。我不确定这是否困难,或者我只是有一个巨大的大脑放屁,但到目前为止我所拥有的只是重复了完整的字符串 X 次。

有人能指出正确的方向吗?

【问题讨论】:

不要扩展密钥或类似的东西。一个一个地遍历字符,当你跑过去时就循环回来。一个简单的方法是模运算符%i++ % 4 将始终是 0、1、2、3 之一。 【参考方案1】:

您可以分两步完成:

    将第一个字符串重复N(即N = ceil(length(str2)/length(str1)))次。

    获取长度等于第二个字符串的长字符串的子字符串。

代码示例:http://ideone.com/pZrFx9

【讨论】:

【参考方案2】:
string key2; //declare the string. It'll be the same length as plaintextString
for (i = 0; i < length(plaintextString); i++ 
    key2[i] = key1[i%(length(key1))]; //you may want to assign length(key1) to a variable

就像 Jon 说的,你肯定会想在这里使用模数运算符。这段代码没有经过语法检查,但只要您熟悉 c++ 语法,它应该会给您一个想法。

【讨论】:

以上是关于重复字符串以填充多个空格的主要内容,如果未能解决你的问题,请参考以下文章

用空格填充单词以填充单元格

Javascript如何将空格统一为1个空格[重复]

如何在java中的字符串中填充空格? [复制]

在Python中用单个空格替换多个空格[重复]

php用一个空格替换多个空格[重复]

将字符串变量分配给空格字符“”以查找重复的单词