我想要做的是在遇到某个角色时在textarea中分割一个字符串。
我正在使用jQuery,但现在我所取得的成就是我可以在白色空间上分割文本并捕获每个子字符串。以下是我构建的示例:
现在我想要不仅在满足空白时,而且在满足“=”符号时拆分文本。例如,如果我在输入文本区写:
number =5
我将获得输出
number
=5
但我希望:
number
=
5
我怎样才能做到这一点?提前谢谢
答案 0 :(得分:0)
变化:
var sublines = lines[i].split(" ");
要:
var sublines = lines[i].replace("=", " = ").split(/[\s]+/);
答案 1 :(得分:0)
$('#hi').val().split(/\b(\n|\=)\b/);
答案 2 :(得分:0)
试试这个:
$("your_text_area").val().replace(/=/g, "\r\n=\r\n");
答案 3 :(得分:0)
除了jQuery之外,一旦你有了对文本的引用,你可以使用以下方法轻松拆分它:
"number =10".replace(/([^\w 0-9])/g, "$1\n").replace(/\s+/g, "\n").split("\n")
输出(数组):
[0]: "number"
[1]: "="
[2]: "10"
这会将所有空格转换为换行符(假设您不想保留任何空格),并在所有非单词和数字后放置换行符。
答案 4 :(得分:0)
使用简单的替换功能: 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);
});