JavaScript中使用正则表达式将特定格式字符串拆分为分组
拆分特定格式字符串:
date, time - name: message 嘿,针对你需要拆分格式为date, time - name: message的字符串需求(其中message字段可能包含逗号、破折号或冒号这类特殊字符),这里有经过验证的靠谱解决方案:
示例输入
03/05/2014, 16:24 - Steven: Thanks, keep you posted :D
期望拆分结果
grp[0]: 03/05/2014 grp[1]: 16:24 grp[2]: Steven grp[3]: Thanks, keep you posted :D
验证有效的正则表达式
经过Andrew Morton和Alexey Lebedev验证,以下正则表达式可以完美满足需求:
/(.{10}), (.{5}) - (.*?): (.*)/
简单解释
(.{10}):精准匹配10位长度的日期内容(比如示例里的03/05/2014)(.{5}):匹配5位长度的时间内容(比如示例里的16:24)(.*?):用非贪婪模式匹配用户名,直到碰到:就停止,避免把message里的特殊字符误算进来(.*):匹配剩下的所有内容作为message,不管里面包含逗号、冒号还是其他字符
内容的提问来源于stack exchange,提问作者user5523539
相关产品推荐
相关产品推荐

