Javascript拆分带有多个分隔符和表达式的字符串
javascript split string with multiple delimeters and expressions
我有以下表达式:
where('publishedDate').gte(new Date('2015-08-21T20:37:45.176Z')).sort({ field: 'asc', test: -1 });
,我想用javascript的字符串解析成以下令牌::split(regex):
where
('publishedDate')
gte
(new Date('2015-08-21T20:37:45.176Z'))
sort
({ field: 'asc', test: -1 })
但是我很难想出一个合适的表达来表达它。任何帮助都非常感谢!
你可以使用这个:
/('w+)('(.+?')(?='.|;|$))/g
它在你的输入上运行良好。
演示:https://regex101.com/r/kV9lS4/1
如何只获得匹配的令牌:
var re = /('w+)('(.+?')(?='.|;))/g,
str = "where('publishedDate').gte(new Date('2015-08-21T20:37:45.176Z'))" +
".sort({ field: 'asc', test: -1 });",
result = [],
arr;
while(arr = re.exec(str)) {
result.push(arr[1]);
result.push(arr[2]);
}
var re = /('w+)('(.+?')(?='.|;))/g,
str = "where('publishedDate').gte(new Date('2015-08-21T20:37:45.176Z')).sort({ field: 'asc', test: -1 });",
result = [],
arr;
while(arr = re.exec(str)) {
result.push(arr[1]);
result.push(arr[2]);
}
document.getElementById('result').innerHTML = JSON.stringify(result, null, 2);
<pre id="result"></pre>
相关文章:
- 将电子邮件验证正则表达式字符串存储在JSON中
- 带有模式的正则表达式字符串
- Javascript if数组包含正则表达式字符串
- 在JSON中指定正则表达式字符串,在JavaScript和PHP中使用
- 从正则表达式文本中获取正则表达式字符串表示的最佳方式
- 正则表达式 - 字符串不能以空格开头,以空格结尾,并且连续包含几个空格
- 正则表达式 - 字符串不应包含超过 7 位数字
- 在 javascript 中将正则表达式字符串转换为正则表达式不同
- 为 STRING 创建一个语法表达式.字符串.PEG上的绳子.js
- Javascript:测试单个字符在正则表达式字符串中找到
- 正则表达式(字符串比较)
- 是否可以生成与正则表达式字符串匹配的字符串
- 正则表达式字符串匹配
- 正则表达式字符串比较忽略符号
- 是否可以使用正则表达式解析正则表达式字符串
- 正则表达式字符串在文档中替换为 JavaScript
- 如何使正则表达式字符串拒绝空白字段
- 拆分正则表达式字符串
- Regex以替换表达式字符串中javascript中的整个单词
- 表示正则表达式字符串表示法