use*_*877 12 javascript regex string split
我试图通过一次或多次出现的字母来分割字符串.
例如:
aaabbcapppp
,会产生阵列, ["aaa", "bb", "c", "a", "pppp"]
我所拥有的最低效的想法就是利用newArray = str.split("");
并重建阵列以满足我的需求.我认为有一个更有效的解决方案.
p.s*_*w.g 22
像这样的东西会起作用:
"aaabbcapppp".match(/(.)\1*/g) // ["aaa", "bb", "c", "a", "pppp"]
Run Code Online (Sandbox Code Playgroud)
的(.)
任何单个字符,在组1中捕获,随后是相同的字符重复零分或多次匹配(\1
是反向引用相匹配正是在第1组被匹配).
要仅匹配拉丁字母,请考虑使用[a-z]
,例如:
"aaa-bbca!!pppp".match(/([a-z])\1*/g) // ["aaa", "bb", "c", "a", "pppp"]
Run Code Online (Sandbox Code Playgroud)
这里,-
和!!
不包括在结果数组中.