使用正则表达式很容易实现:
var text = '75 characters long (really!) — well... maybe not, but you get the picture.',
broken;
broken = text.replace(/([^\0]{25})/g, '$1\n');
Run Code Online (Sandbox Code Playgroud)
正如这里所示:http://jsbin.com/ajiyo/3.
编辑:解释正则表达式:它将匹配任何字符串(除NUL之外的每个字符的集合),即25个字符长.
括号()表示应捕获此部分,第二个参数(替换字符串)的"$ 1"部分表示第一次捕获.
找到的每个25个字符的字符串将被'本身加上换行符'替换.如果余数小于25个字符,则不会匹配,而是单独保留.
第二次编辑:Brock是对的,圆点在方括号中失去了它的特殊含义.我用所有非NUL字符替换了它,因为我不希望文本字符串中有NUL字符.