3
A
回答
8
def excel_col_index(str)
value = Hash[ ('A'..'Z').map.with_index.to_a ]
str.chars.inject(0){ |x,c| x*26 + value[c] + 1 }
end
或者
def excel_col_index(str)
offset = 'A'.ord - 1
str.chars.inject(0){ |x,c| x*26 + c.ord - offset }
end
1
啊沒關係..
def cell2num col
val = 0
while col.length > 0
val *= 26
val += (col[0].ord - 'A'.ord + 1)
col = col[1..-1]
end
return val - 1
end
4
我會做這樣的事情:
def column_name_to_number(column_name)
multipliers = ('A'..'Z').to_a
chars = column_name.split('')
chars.inject(-1) { |n, c| multipliers.index(c) + (n + 1) * 26 }
end
相關問題
- 1. 將字母轉換爲整數?
- 2. 將excel列字母(例如AA)轉換爲數字(例如25)
- 3. R將字母轉換爲整個數據框中的數字
- 4. 將Excel或Excel表格列的字母轉換爲Pythonic風格的數字
- 5. 將字母數字轉換爲整數的java函數
- 6. 將26個整數的數組轉換爲字符(字母)
- 7. 將字母數字字符串轉換爲整數格式
- 8. 將Ruby字符串轉換爲整數數組的字節?
- 9. 將文本框中的字母轉換爲整數
- 10. 將字符串數字(字格式)轉換爲整數ruby
- 11. 將散列鍵轉換爲ruby中的整數
- 12. 將Base64字符串轉換爲Ruby中的整數
- 13. 將字符串轉換爲Ruby中的符號和整數
- 14. Ruby:將一個bitarray轉換爲整數
- 15. 將Ruby符號轉換爲整數
- 16. Excel - 將列號轉換爲字母equivlent vbs
- 17. 將字母轉換爲相應數字
- 18. 將字母轉換爲數字
- 19. 將數字轉換爲字母組合
- 20. 將數字轉換爲字母javascript
- 21. 將數字轉換爲字母
- 22. 將數字轉換爲字母
- 23. 將一串字母轉換爲數字
- 24. 將字符串(字母)從文本文本轉換爲整數
- 25. 使用Ruby 1.9中的CSV庫將字符串的CSV列轉換爲整數
- 26. 在Ruby中將整數轉換爲簽名字符串
- 27. 在Ruby中將整數轉換爲十六進制字符串
- 28. 在ruby中將整數轉換爲字符串
- 29. 在Excel中將txt轉換爲數字
- 30. 如何將整行輸入轉換爲Ruby中的整數?
我覺得第二個很漂亮:3 – Kokizzu 2014-11-06 07:40:50