如何使用 jQuery 拆分 textarea 上的文本

How to spilt text on textarea using jQuery

我想做的是当遇到某个字符时在textarea中拆分一个字符串。

我正在使用 jQuery,但现在我所取得的成就是我可以在白色 space 上拆分文本并捕获每个子字符串。这是我构建的示例:

JSFIDDLE

现在我不仅要在遇到白色space时拆分文本,还要在遇到“=”符号时拆分文本。例如,如果我在输入文本区域写入:

number =5

我将得到输出

number
=5

但我想要:

number
=
5

我怎样才能做到这一点?提前谢谢你

变化:

var sublines = lines[i].split(" ");

收件人:

var sublines = lines[i].replace("=", " = ").split(/[\s]+/);
$('#hi').val().split(/\b(\n|\=)\b/);

演示: https://jsfiddle.net/ofL1c1xo/2/

试试这个:

$("your_text_area").val().replace(/=/g, "\r\n=\r\n");

jQuery 另外,一旦你有了对文本的引用,你可以使用以下方式轻松拆分它:

"number  =10".replace(/([^\w 0-9])/g, "\n").replace(/\s+/g, "\n").split("\n")

输出(数组):

[0]: "number"
[1]: "="
[2]: "10"

这会将所有白色 space 转换为换行符(假设您不想保留任何白色 space),并在所有非单词和数字之后放置一个换行符。

使用简单的替换功能: https://jsfiddle.net/ofL1c1xo/8/

$('input[type=button]').click(function () {
    var lines = $('#hi').val(),
        output = lines.replace(/\s/g,"\n").replace("=","=\n");    
    $("#output").html(output);
});

Update,以确保永远不会有超过一个新行:

$('input[type=button]').click(function () {
    var lines = $('#hi').val(),
        output = lines.replace(/\s/g,"\n").replace("=","\n=\n").replace(/\n+/g,"\n");    
    $("#output").html(output);
});