Ruby字符串中插入空格/删除的问题
求Ruby代码实现对一个字符串每两个字符插入一个空格,最后返回结果字符串。最好也一起提供这个字符串转换过程的反过程。麻烦给个Ruby代码的,分已加满...
求Ruby代码实现对一个字符串每两个字符插入一个空格,最后返回结果字符串。最好也一起提供这个字符串转换过程的反过程。
麻烦给个Ruby代码的,分已加满 展开
麻烦给个Ruby代码的,分已加满 展开
2个回答
2010-03-19
展开全部
先把字符串转成字符数组,然后写个函数扫一遍字符数组,遇到2的倍数步就加个空格,返回新字符串
字符串转成字符数组:
>> str = "ABC"
=> "ABC"
>> chars = str.scan(/./)
=> ["A", "B", "C"]
函数给你个python的参考吧,话说我python居然还真没忘。。。
'''正向操作
def f(x):
s = ""
for i in range(len(x)):
if i % 2 == 0:
s = s + ' '
s = s + x[i]
return s[1:]
'''逆向操作
def f_rev(x):
s = ""
'''凡是偶数位的空格删掉
'''
for i in range(len(x)):
if (i-2) % 3 == 0 and x[i] == ' ':
continue
s += x[i]
return s
'''测试
s = "abcdedg"
print (f_rev(f(s))
字符串转成字符数组:
>> str = "ABC"
=> "ABC"
>> chars = str.scan(/./)
=> ["A", "B", "C"]
函数给你个python的参考吧,话说我python居然还真没忘。。。
'''正向操作
def f(x):
s = ""
for i in range(len(x)):
if i % 2 == 0:
s = s + ' '
s = s + x[i]
return s[1:]
'''逆向操作
def f_rev(x):
s = ""
'''凡是偶数位的空格删掉
'''
for i in range(len(x)):
if (i-2) % 3 == 0 and x[i] == ' ':
continue
s += x[i]
return s
'''测试
s = "abcdedg"
print (f_rev(f(s))
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询