javascript:拆分多个分隔符的字符串,但也将分隔符保留为单独的标记
javascript:拆分多个分隔符的字符串,但也将分隔符保留为单独的标记
我想分割一个字符串,但希望将标记以及分割符保留为单独的标记,并希望返回一个数组:
elt(a,b,c)" =>
0 = "elt"
1 = "("
2 = "a"
3 = ","
4 = "b"
5 = ","
6 = "c"
7 = ")"
我目前为止:
string = "elt(a, b, c)"
string.split(new RegExp('[-+(),*/:? ]', 'g'))
0 = "elt"
1 = "a"
2 = ""
3 = "b"
4 = ""
5 = "c"
6 = ""
我想将分隔符作为数组传递,例如:SEPERATORS = [ '+', ',', '>>>=', '>>=', '<<=',",", "("].join("")
您可以在正则表达式中使用捕获组来伪装令牌:
string.split(/([-+(),*/:? ])/g)
^ ^
|___ group __|
输出:
[
'elt', '(', 'a', ',',
'', ' ', 'b', ',',
'', ' ', 'c', ')',
''
]
您也可以轻松删除空字符串:
string.split(/([-+(),*/:? ])/g).filter(Boolean)
最新文章
- PHP实现接口
- 自定义微信小程序tabBar组件上边框的颜色
- Cocos2dx 之 cocosbuilder的使用
- WinRAR 3.51 注册码
- vmware装的ubuntu的界面怎么全屏?
- 黑客养成记(4)
- gridview的ButtonField
- Put GridView inside ScrollView
- 【魔兽世界】
- HTML超出文本显示省略号...[text
- Gallery3D
- 谈谈SOA
- 详解mmap:是什么 为什么 怎么用
- 看门狗watchdog的理解
- 网站生成静态页面
- Python使用traceback.print
- curl命令介绍与使用
- Shiro登录的使用以及原理(一)
- Qt数据库:(五)QSqlQueryModel
- 【C语言进阶】C语言实现通讯录