インデントを除去する
a
b
c
a
dを、
a b c a d
のようにする。問題は単純なのに、きれいに書こうとすると難しいな。
function stripIndent(str) { var strs = str.split('\n'), a = []; for (var i = 0; i < strs.length; ++i) { var s = strs[i]; var n = s.match(/^\s*/)[0].length; if (!n) return str; a.push(n); } return str.replace(RegExp('^\\s{' + Math.min.apply(null, a) + '}', 'gm'), ''); } stripIndent(' aaaa\n aaaa\n aaaa'); // ' aaaa\naaaa\n aaaa'