Javascript:快速脚本排列管道分隔的文本(或任何字符分隔的文本)

时间:2009-10-30 04:28:18

标签: javascript string delimited-text

背景:我之前写过这篇文章,但我不喜欢这种做法。原因是因为Javascript没有“sprintf”,如果语言支持它,那就是我大量使用的。

问题:您如何使用javascript从BEFORE到AFTER?如果任何人都有一个代码行数非常少的解决方案,或者来自javascript字符串库的东西,那么这将提供信息。 TIA。

在:

red| lightblue| green 
cherry| ice| mint 
round| cubic| flowery

在:

red    | lightblue | green 
cherry | ice       | mint 
round  | cubic     | flowery

免责声明:这不是家庭作业或任何此类事情,只是寻找新的想法。此外,这不是基于浏览器的JavaScript。这不是一个网络开发问题,而是一个javascript编程问题。

2 个答案:

答案 0 :(得分:2)

如果您喜欢sprintf,为什么不为它寻找JavaScript implementation

答案 1 :(得分:1)

function pad(str, len) {
    for (var count = len - str.length; count > 0; count--) {
        str = str + " ";
    }
    return str;
}

console.log(pad("red", 7) + "| " + pad("lightblue", 9) + "| " + pad("green", 7));
//etc.

是的,逐个连接字符是低效的,但通常你只会进行少量的迭代。