Javascript 如何分割一块文本,使其不';不要在一个分裂的词上结束?

Javascript 如何分割一块文本,使其不';不要在一个分裂的词上结束?,javascript,Javascript,我编写了一段代码,将一大块文本分割成995个字符的块,并将每个块推送到一个数组中。但是,这通常会导致单词在995个字符行处拆分-如何编辑代码,使每个文本块的长度尽可能接近995个字符(必须小于995个字符),但以最后可用的空间结束 function cutUp() { var PAname = prompt("Determine PA type and PA Name (e.g. 5=mexican food="); var chunks = []; var OGstring = documen

我编写了一段代码,将一大块文本分割成995个字符的块,并将每个块推送到一个数组中。但是,这通常会导致单词在995个字符行处拆分-如何编辑代码,使每个文本块的长度尽可能接近995个字符(必须小于995个字符),但以最后可用的空间结束

function cutUp() {
var PAname = prompt("Determine PA type and PA Name (e.g. 5=mexican food=");
var chunks = [];
var OGstring = document.getElementById('PATypes').value;
var my_long_string = OGstring.split('1').join('').split('2').join('').split('3').join('').split('4').join('').split('5').join('').split('6').join('').split('7').join('').split('8').join('').split('9').join('').split('0').join('').split('[edit]').join('').split('[citation needed]').join('').split('[').join('').split(']').join('').split('(').join('').split(')').join('');



var i = 0;
var n = 0;
while (n < my_long_string.length) {
    chunks.push(my_long_string.slice(n, n += 995));

}
if (chunks[0] != null) {
    $('PAType=Name=Value8').innerHTML = PAname + chunks[0];
}
if (chunks[1] != null) {
    $('PAType=Name=Value9').innerHTML = PAname + chunks[1];
}
if (chunks[2] != null) {
    $('PAType=Name=Value10').innerHTML = PAname + chunks[2];
}
if (chunks[3] != null) {
    $('PAType=Name=Value11').innerHTML = PAname + chunks[3];
}
if (chunks[4] != null) {
    $('PAType=Name=Value12').innerHTML = PAname + chunks[4];
}
if (chunks[5] != null) {
    $('PAType=Name=Value13').innerHTML = PAname + chunks[5];
}
if (chunks[6] != null) {
    $('PAType=Name=Value14').innerHTML = PAname + chunks[6];
}
if (chunks[7] != null) {
    $('PAType=Name=Value15').innerHTML = PAname + chunks[7];
}
if (chunks[8] != null) {
    $('PAType=Name=Value16').innerHTML = PAname + chunks[8];
}
if (chunks[9] != null) {
    $('PAType=Name=Value17').innerHTML = PAname + chunks[9];
}

////this is to create new exportable table
$('exportTable').innerHTML += $('tableContents').innerHTML;
$("exportTable").removeClass('hidden');
///this resets to default
defaultReset();
function cutUp(){
var PAname=prompt(“确定PA类型和PA名称(例如5=mexican food=”);
var chunks=[];
var OGstring=document.getElementById('PATypes').value;
变量my_long_string=OGstring.split('1')。join('').split('').split('3')。join('').split('4')。join('').split('.6')。join('').split('7')。join('').split('').split('.9')。join('').split('').split('.split('').split('.0')。join('')。join('')。split.split('')。split('')。split所需的)split('.split需要的)join('')。split.split(“)”).join(“”);
var i=0;
var n=0;
while(n

}​

在没有任何特定Javascript知识的情况下,我会说向前看995个字符,如果这个字符本身不是空格,就开始向后看,直到找到一个空格,然后在那里截断

在类似C的伪代码中,
chars
是您的大字符数组:

for(truncOffset = 995; truncOffset > 0; truncOffset--):
{  
    if chars[currentLoc + truncOffset] = ' ': /* a space character */ break;  
}

冲洗,重复尝试。在找到空间后,记得将
currentLoc
移动到
currentLoc+truncOffset

我怀疑
PAType=Name=ValueX
是一个有效的选择器。WTF,使用正则表达式删除字符串:
OGstring.replace(/\[(需要编辑引文)\]\d\[()\]/g,”)