javascript - 我需要将重复单词上的长字符串拆分为数组

标签 javascript regex

尝试使用 Javascript,我有一个非常长的字符串,我需要使用在字符串中重复的单词将其拆分为数组。

例子:

long_string = "THS& | Willam | Baker | 1234 Corker St| Jacksonville, TX 75074| THS& Steve | James | 4312 Corker St | Jacksonville, TX 75074| THS& | Samuel | Cade | 1257 Corker St | Jacksonville, TX 75074|"

我试过拆分和匹配,但它总是遗漏了 THS&

split_string = [];
split_string = long_string.split(/THS&/);
console.log(split_string);


放入数组:

[THS& | Willam | Baker | 1234 Corker St| Jacksonville, TX 75074|, THS& Steve | James | 4312 Corker St | Jacksonville, TX 75074|, THS& | Samuel | Cade | 1257 Corker St | Jacksonville, TX 75074|]

但我得到的是类似的东西

[| Willam | Baker | 1234 Corker St| Jacksonville, TX 75074|, Steve | James | 4312 Corker St | Jacksonville, TX 75074|, | Samuel | Cade | 1257 Corker St | Jacksonville, TX 75074|]

最佳答案

无论您在 split 中匹配什么(如 THS&)都不会包含在结果中。解决方案是使用 look-ahead ,它实际上并没有捕获字符串:

var long_string = "THS& | Willam | Baker | 1234 Corker St| Jacksonville, TX 75074| THS& Steve | James | 4312 Corker St | Jacksonville, TX 75074| THS& | Samuel | Cade | 1257 Corker St | Jacksonville, TX 75074|"

var split_string = long_string.split(/(?=THS&)/);
console.log(split_string);

关于javascript - 我需要将重复单词上的长字符串拆分为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56976933/

相关文章:

java - 保留正则表达式解析的数据

regex - 如何使正则表达式仅搜索 ipv4 地址?

php - 组合正则表达式字符类

javascript - 在 snack.expo.io 上 react native 使用 Hook

javascript - Janusgraph 很难理解如何操作 gremlin 查询中的数据

javascript - 回调中如何返回值?

javascript - 无法验证密码是否为空

java - "Hello World"Java JAX-WS 上的应用程序

javascript - 尝试使用 phantom.js 登录 facebook

javascript - 在 JavaScript 中,replace() 尝试替换换行符 (/n/rn/r) 时未按预期运行