我在javascript中有以下字符串,
Id:121,RefId:123,Date:Sep 22, 2012 12:00:00 AM
当我试图将它分成3个键,值对使用时,作为分隔符,它给了我错误的输出,因为在日期还有另一个,(逗号)。
所以我想我必须使用正则表达式
我想按如下方式显示它;
Id:121
RefId:123
Date:Sep 22, 2012 12:00:00 AM
有人可以建议如何使用正则表达式来克服日期中额外的逗号吗? 在此先感谢...
答案 0 :(得分:4)
你的意思是拆分,
,而不是空格?
'Id:121,RefId:123,Date:Sep 22, 2012 12:00:00 AM '.split(/,(?=\S)/);
// will give you ["Id:121", "RefId:123", "Date:Sep 22, 2012 12:00:00 AM "]
答案 1 :(得分:2)
如果你真的想要一个正则表达式(而不是有限的分割),你可以这样做:
var text = "Id:121,RefId:123,Date:Sep 22, 2012 12:00:00 AM";
text.match(/^(.+?),(.+?),(.+)$/);
答案 2 :(得分:2)
如果您想使用正则表达式,可以试试这个:
re = /^Id:(\d+),RefId:(\d+),Date:(.+)/
matches = re.exec("Id:121,RefId:123,Date:Sep 22, 2012 12:00:00 AM")
matches[1] // "121"
matches[2] // "123"
matches[3] // "Sep 22, 2012 12:00:00 AM"