Javascript 使用各种分隔符拆分字符串,同时保留分隔符
我有以下字符串:Javascript 使用各种分隔符拆分字符串,同时保留分隔符,javascript,string,split,Javascript,String,Split,我有以下字符串: "dogs@cats^horses^fish!birds" 如何取回以下数组 ['dogs','@cats','^horses','^fish','!birds'] 基本上,我是想在保持纤度的同时,把绳子分开。我尝试了string.match,但没有效果。假设这些是您唯一的分隔符,那么您可以执行以下操作: var string = "dogs@cats^horses^fish!birds"; string.replace(/(@|\^|!)/g, '|$1').split(
"dogs@cats^horses^fish!birds"
如何取回以下数组
['dogs','@cats','^horses','^fish','!birds']
基本上,我是想在保持纤度的同时,把绳子分开。我尝试了string.match,但没有效果。假设这些是您唯一的分隔符,那么您可以执行以下操作:
var string = "dogs@cats^horses^fish!birds";
string.replace(/(@|\^|!)/g, '|$1').split('|');
我们基本上添加了我们自己的分隔符,在本例中|并基于此进行拆分。假设这些是您唯一的分隔符,那么您可以执行以下操作:
var string = "dogs@cats^horses^fish!birds";
string.replace(/(@|\^|!)/g, '|$1').split('|');
我们基本上添加了我们自己的分隔符,在本例中|并基于此进行拆分。这就是您想要的:
str.match(/((^|[^\w])\w+)/g)
但是,如果没有更多的测试用例,很难说它有多可靠
这也假设了一大组可能的分隔符。如果是少量的固定量,Samer的解决方案将是一个很好的方法这正是您想要的:
str.match(/((^|[^\w])\w+)/g)
但是,如果没有更多的测试用例,很难说它有多可靠
这也假设了一大组可能的分隔符。如果是一个小的固定数量,Samer的解决方案将是一个很好的方法你有什么代码?@SmokeyHP和DownVorters:代码并不总是必要的。在某些情况下,这是一个问题,您知道或不知道解决方案,并且添加一些代码不会有太大的改变。我现在找不到一篇关于这一点的博文。@scimenster不,不是,但你已经尝试过的证据是。我没有投反对票,但正如OP所说,他们已经尝试了string.match,知道他们尝试了什么很有趣,这样我们就可以告诉他们哪里出了问题,而不是提交完整的解决方案。他们可能已经很接近了!你有什么代码?@SmokeyHP和DownVorters:代码并不总是必要的。在某些情况下,这是一个问题,您知道或不知道解决方案,并且添加一些代码不会有太大的改变。我现在找不到一篇关于这一点的博文。@scimenster不,不是,但你已经尝试过的证据是。我没有投反对票,但正如OP所说,他们已经尝试了string.match,知道他们尝试了什么很有趣,这样我们就可以告诉他们哪里出了问题,而不是提交完整的解决方案。他们可能已经很接近了!非常好和干净的解决方案!!完美的多谢各位@silentw@Cmag我想你应该感谢Samer。。。只是说:p当然不会冒犯傻子!非常好和干净的解决方案!!完美的多谢各位@silentw@Cmag我想你应该感谢Samer。。。只是说:p当然不会冒犯傻子!