如何根据两个分隔符拆分字符串?

Posted

技术标签:

【中文标题】如何根据两个分隔符拆分字符串?【英文标题】:How can I split a string based on two delimiters? 【发布时间】:2020-04-11 17:18:06 【问题描述】:

我的代码是这样的:

<template>
    ...
        <p v-for="club in clubs">club</p>
    ...
</template>
<script>
export default 
  data: () => (
    clubs: ''
  ),
  mounted () 
    let dataClub =  "- City\n - MU\n - Liverpool\n - Arsenal\n - Chelsea"
    // let dataClub =  "City;MU;Liverpool;Arsenal;Chelsea"
    let dc = dataClub.split('\n')
    this.clubs = dc
  

</script>

dataClub 是动态的。可以用;隔开,也可以用\n隔开

如果有 2 个分隔符,我如何进行拆分?

【问题讨论】:

不是一个好的解决方案,但您可以将一个替换为另一个,然后拆分另一个:dataClub.replace(/\n/g, ';').split(';')。 ;-) 【参考方案1】:

一种选择是在;\n 之间使用正则表达式:

const doSplit = str => str.split(/;|\n/);

console.log(doSplit("- City\n - MU\n - Liverpool\n - Arsenal\n - Chelsea"));
console.log(doSplit("City;MU;Liverpool;Arsenal;Chelsea"));

【讨论】:

我想再添加1个分隔符,即\\t。我怎么做?是这样的吗:const doSplit = str =&gt; str.split(/;|\n|\\t/);【参考方案2】:

你可以试试 RegEx:

let dc = dataClub.split(/[\n;]/)

【讨论】:

我想再添加1个分隔符,即\\t。我怎么做?是不是这样 :let dc = dataClub.split(/[\n;\\t]/)?

以上是关于如何根据两个分隔符拆分字符串?的主要内容,如果未能解决你的问题,请参考以下文章

根据变长分隔符拆分熊猫字符串列

如何在javascript中的两个分隔符之间拆分字符串?

在 SSMS 中,我需要拆分多个列,根据逗号分隔保持数据有序

如何根据一个字段是不是包含oracle sql中的逗号分隔字符串将单行拆分为多行?

根据多个分隔符拆分字符串

Java - 基于多个分隔符拆分字符串