javascript - 使用 javascript 分割文本而不丢失数据

标签 javascript

我有一个用于分割文本的代码,但它丢失了一些数据。我的问题是如何分割文本并保留所有数据。我的代码如下?

 function splitArray(){
    var myStr = "| 07.02.2017 13:49:25 | Guest 6278: Hi anybody here | 07.02.2017 13:49:58 | Admin: Yes, how may l help you | 07.02.2017 13:50:25 | Guest 6278: Do we have to change sites | 07.02.2017 13:50:58 | Admin: No, no need";
    var strArray = myStr.split(" | 0");

    // Display array values on page
    for (var i = 0; i < strArray.length; i++) {
        $("body").append("<p>" + strArray[i] + "</p>");
    }
}

问题出在这里,它删除了日期 7 之前的数字 (0)

| 2017 年 2 月 7 日 13:49:25 |访客 6278:大家好

2017年2月7日13:49:58 |管理员:是的,我能为您提供什么帮助

2017年2月7日13:50:25 |客人6278:我们要换地点吗

2017年2月7日13:50:58 |管理员:不,不需要

最佳答案

您可以将RegExp正向前瞻结合使用。

很少有人问如果数字不是以 0 开头,那么您应该使用 /(?=\|\d)/.如果您只关心以 0 开头的数字 - 使用 /(?=\| 0)/

function splitArray(){
    var myStr = "| 07.02.2017 13:49:25 | Guest 6278: Hi anybody here | 17.02.2017 13:49:58 | Admin: Yes, how may l help you | 07.02.2017 13:50:25 | Guest 6278: Do we have to change sites | 07.02.2017 13:50:58 | Admin: No, no need";
    var strArray = myStr.split(/(?= \| \d)/);

    // Display array values on page
    for (var i = 0; i < strArray.length; i++) {
        $("body").append("<p>" + strArray[i] + "</p>");
    }
}
splitArray();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

关于javascript - 使用 javascript 分割文本而不丢失数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42649978/

相关文章:

javascript - 我可以修改饼图中值(value)重新分配的逻辑吗?

javascript - 如何简化动画 jQuery 代码

javascript - react onClick 方法

javascript - 如何使用 JQuery 计算包含选定值的选择列表的数量?

javascript - 给 setTimeout 的函数是用什么调用的?

javascript - 使用 Moment.js 和 FullCalendar 处理与日期无关的事件

javascript - 使用 YUI 更改输入值

javascript - 在javascript中调用动态函数

Javascript,关闭选项卡

javascript - 防止已经改变颜色的单元格再次改变颜色