Javascript 如何使用多个分号拆分字符串
我有一根像下面这样的线Javascript 如何使用多个分号拆分字符串,javascript,arrays,typescript,split,Javascript,Arrays,Typescript,Split,我有一根像下面这样的线 var exampleString=“名称:Sivakumar;Tadisetti;国家:印度” 我想用分号拆分上面的字符串,所以需要像这样的数组 var result=[“名称:Sivakumar;Tadisetti”,“国家:印度”] 但由于名称包含另一个分号,我得到的数组类似 var result=[“姓名:Sivakumar”、“Tadisetti”、“国家:印度”] 这里Sivakumar;Tadisetti键的值名称 我刚刚编写了类似于exampleStrin
var exampleString=“名称:Sivakumar;Tadisetti;国家:印度”
我想用分号拆分上面的字符串,所以需要像这样的数组
var result=[“名称:Sivakumar;Tadisetti”,“国家:印度”]
但由于名称包含另一个分号,我得到的数组类似
var result=[“姓名:Sivakumar”、“Tadisetti”、“国家:印度”]
这里Sivakumar;Tadisetti
键的值名称
我刚刚编写了类似于exampleString.split(“;”)
的代码。。。除此之外,我无法获得进一步的想法,以获得我想要的输出。有什么建议吗
拆分逻辑:我想将字符串拆分为带有
键:值
对的数组因为.split
也接受正则表达式,所以可以使用一个匹配分号的数组,分号后面只跟以:
结尾的字母数字字符(如果后面跟有另一个键,则有效)
var exampleString=“名称:Sivakumar;Tadisetti;国家:印度”;
var result=exampleString.split(/;(?=\w+:)/);
console.log(result)
因为.split
也接受正则表达式,所以可以使用一个与分号匹配的分号,分号后面只跟以结尾的字母数字字符:
(如果后跟另一个键,则有效)
var exampleString=“名称:Sivakumar;Tadisetti;国家:印度”;
var result=exampleString.split(/;(?=\w+:)/);
log(result)
这里有一种方法,我们首先在上拆分输入
然后将不带的元素与前一个元素合并:;因为它不应该被吐出来
let exampleString=“名称:Sivakumar;Tadisetti;国家:印度”
让reverseSplite=exampleString.split(“;”).reverse();
让我们一起来吧;
让正则表达式=/[^::+:.*/;
让结果=reverseSplite.map(str=>{
if(正则表达式测试(str)){
如果(前一个字符串){
让returnValue=str+“;”+prevoiuString;
prevoiustring=null;
返回值
}
返回str
}
prevoiustring=str;
}).过滤器(e=>e);
控制台日志(结果)代码>这里有一种方法,我们首先在上拆分输入
然后将不带的元素与前一个元素合并:;因为它不应该被吐出来
let exampleString=“名称:Sivakumar;Tadisetti;国家:印度”
让reverseSplite=exampleString.split(“;”).reverse();
让我们一起来吧;
让正则表达式=/[^::+:.*/;
让结果=reverseSplite.map(str=>{
if(正则表达式测试(str)){
如果(前一个字符串){
让returnValue=str+“;”+prevoiuString;
prevoiustring=null;
返回值
}
返回str
}
prevoiustring=str;
}).过滤器(e=>e);
控制台日志(结果)代码>定义哪个的逻辑是什么代码>在何处拆分?字符串中有2个分号。@GabrielePetrioli我想用key:value拆分字符串pairs@Leonardo没有“Sivakumar;Tadisetti”是单曲value@GabrielePetrioli键
不包含分号,但值
可能包含多个分号,例如:名称:Sivakumar;塔迪塞蒂
,国家:印度
值是否总是以分号结尾?定义哪个的逻辑是什么代码>在何处拆分?字符串中有2个分号。@GabrielePetrioli我想用key:value拆分字符串pairs@Leonardo没有“Sivakumar;Tadisetti”是单曲value@GabrielePetrioli键
不包含分号,但值
可能包含多个分号,例如:名称:Sivakumar;Tadisetti
,国家:印度
值是否总是以分号结尾?dude;又好又干净;又好又干净。