背景
在Excel中,列的名称是这样一个递增序列:A、B、C、…、Z、AA、AB、AC、…、AZ、BA、BB、BC、…、BZ、CA、…、ZZ、AAA、AAB…。
我们需要将上述列名序列和以下自然数序列相互转换:1、2、3、…。
算法实现
function convert10To26(num){
var code='';
var reg = /^\\d+$/g;
if(!reg.test(num)){
return code;
}
while (num>0){
m = num % 26
if (m==0){
m = 26;
}
code = String.fromCharCode(64 + parseInt(m)) + code;
num = ( num - m ) /26;
}
return code;
}