假设您的字符串为"Hi"
。你如何得到值为8
,9
("H"
是字母表的第8个字母,而"i"
是第9个字母)。然后说,添加1
到那些整数,并使其9
,10
,然后可以重新回到字符串"Ij"
?可能吗?将字符串转换为整数
0
A
回答
2
使用ord
获取ASCII索引,并chr
将其恢复。
'Hi'.chars.map{|x| (x.ord+1).chr}.join
0
您还可以使用codepoints
方法从字符串创建字符序数的枚举。
string = "Hi"
string.codepoints.map{|i| (i + 1).chr}.join
=> "Ij"
3
注意卡里Swoveland已经给出了这个问题的评论的一样的答案。
通过数字8和9不可能做到这一点,因为这些数字不包含有关字母大小写的信息。但是,如果你不通过数字8和9,而是更有意义的号码,如ASCII码字符串转换坚持,那么你可以做这样的:
"Hi".chars.map(&:next).join
# => "Ij"
+0
我发布了一个解决方案,下面是OP所需的解决方案。如果你想做更大的转变,调整参数旋转。当然,我并不喜欢问题中提到的8和9,但答案非常符合我认为的问题的精神。 –
0
保留的情况下,并假设你想环绕在“Z”:
upper = [*?A..?Z]
lower = [*?a..?z]
LOOKUP = (upper.zip(upper.rotate) + lower.zip(lower.rotate)).to_h
s.each_char.map { |c| LOOKUP[c] }.join
#=> "Ij"
相关问题
- 1. 将字符串转换为整数
- 2. 将字符串转换为整数
- 3. Python将字符串转换为整数?
- 4. 将字符串转换为整数
- 5. 将字符串“09335887170”转换为整数
- 6. 将字符串转换为整数C#
- 7. 将字符串转换为整数?
- 8. Argv - 将字符串转换为整数
- 9. 将字符串值转换为整数
- 10. 将空字符串转换为整数
- 11. Swift:将字符串转换为整数
- 12. 将字符串转换为整数
- 13. 将字符串转换为整数
- 14. 将字符串转换为大整数?
- 15. 将字符串转换为整数
- 16. 将JavaScript字符串转换为整数
- 17. 将整数转换为字符串-mysql
- 18. 将字符串转换为整数Android
- 19. 将字符串转换为整数?
- 20. 将整数转换为字符串
- 21. Java将字符串转换为整数
- 22. 将整数转换为字符串
- 23. 将字符串转换为整数
- 24. 将字符串转换为整数
- 25. 将字符串转换为整数
- 26. 将整数转换为字符串
- 27. 将整数转换为字符串
- 28. 将字符串转换为整数
- 29. 将整数值转换为字符串
- 30. 将字符串整数的JSON字典转换为整数
想知道如何处理边缘情况?如果你有“Yz”,你会期望新的字符串是什么? – SteveTurczyn