最近碰到一個問題,需要將textarea中獲取到的多行文本數據按每一行進行識別,分隔成每一行一條單獨的數據
比如這樣的數據
"adsghasdghq131dadqe1
qw1231few34234wetete
qweq12314twr12313131
wr12313131qw2314tdas
qwequiqweasdaduqweie"
希望按照換行轉換爲
["adsghasdghq131dadqe1","qw1231few34234wetete","qweq12314twr12313131","wr12313131qw2314tdas","qwequiqweasdaduqweie"]
可以用下面的方法
let value=`
adsghasdghq131dadqe1
qw1231few34234wetete
qweq12314twr12313131
wr12313131qw2314tdas
qwequiqweasdaduqweie`;
let code = value.split(/[(\r\n)\r\n]+/); // 根據換行或者回車進行識別
code.forEach((item, index) => { // 刪除空項
if (!item) {
code.splice(index, 1);
}
})
code = Array.from(new Set(code)); // 去重
console.log(code);
結果如下:
主要是通過
value.split(/[(\r\n)\r\n]+/)
進行的識別分隔。其中\n代表換行,\r代表回車,可以加個\s代表空格
value.split(/[(\r\n\s)\r\n\s]+/)
let value=["adsghasdghq131dadqe1", "qw1231few34234wetete", "qweq12314twr12313131", "wr12313131qw2314tdas", "qwequiqweasdaduqweie"];
let code = value.join("\n"); // 按數組每一項轉換爲每一行數據
console.log(code);
結果如下
可以看到空格也被分隔了。
同理,將數組轉換爲換行的字符串
let value=["adsghasdghq131dadqe1", "qw1231few34234wetete", "qweq12314twr12313131", "wr12313131qw2314tdas", "qwequiqweasdaduqweie"];
let code = value.join("\n"); // 按數組每一項轉換爲每一行數據
console.log(code);
結果如下