假設您的字符串爲"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. Swift:將字符串轉換爲整數
- 3. 將字符串轉換爲整數
- 4. 將字符串轉換爲整數
- 5. 將字符串轉換爲整數?
- 6. 將字符串轉換爲整數
- 7. 將整數轉換爲字符串
- 8. 將字符串轉換爲整數
- 9. 將整數值轉換爲字符串
- 10. 將整數轉換爲字符串-mysql
- 11. 將JavaScript字符串轉換爲整數
- 12. 將字符串值轉換爲整數
- 13. 將字符串轉換爲整數?
- 14. 將整數轉換爲字符串
- 15. 將字符串轉換爲整數
- 16. 將字符串轉換爲整數Android
- 17. 將字符串轉換爲整數
- 18. 將整數轉換爲字符串
- 19. 將字符串轉換爲整數
- 20. 將字符串轉換爲整數
- 21. 將字符串「09335887170」轉換爲整數
- 22. 將字符串轉換爲大整數?
- 23. 將整數轉換爲字符串
- 24. Argv - 將字符串轉換爲整數
- 25. Java將字符串轉換爲整數
- 26. 將字符串轉換爲整數
- 27. 將空字符串轉換爲整數
- 28. 將字符串轉換爲整數C#
- 29. Python將字符串轉換爲整數?
- 30. 將字符串整數的JSON字典轉換爲整數
想知道如何處理邊緣情況?如果你有「Yz」,你會期望新的字符串是什麼? – SteveTurczyn