我有以下字符串:
01/12/2015-04/27/2015 Lecture Monday, Wednesday, Friday 12:00PM - 12:50PM, CoolGuy Hall, Room 006 01/12/2015-04/27/2015 Laboratory Thursday 10:50AM - 12:05PM, Epic Science, Room 121
我正在尝试解析它,所以我可以得到像这样的对象
{
days: ["Monday", "Wednesday", "Friday"]
start: "12:00PM"
end: "12:50PM"
location: "CoolGuy Hall, Room 006"
}
和
{
days: ["Thursday"]
start: "10:50AM"
end: "12:05PM"
location: "Epic Science, Room 121"
}
无论如何干净地做到这一点?我尝试使用日期分割方法:
/((..\/..\/....)-(..\/..\/....) \w+)/
无济于事,正如你上面所见,我的正则表达式技能相当有限。
谢谢!
答案 0 :(得分:2)
以下代码对我有用...检查这是你要做的...... ??
var data = "01/12/2015-04/27/2015 Lecture Monday, Wednesday, Friday 12:00PM - 12:50PM, CoolGuy Hall, Room 006 01/12/2015-04/27/2015 Laboratory Thursday 10:50AM - 12:05PM, Epic Science, Room 121"
data.replace(/\d{2}\/\d{2}\/\d{4}\-\d{2}\/\d{2}\/\d{4} ([^\s]+) ([^\d]+) ([^\s]+) \- ([^,]+), ([^,]+), Room ([^\s]+)/g, "{\n\tdays: [$2]\n\tstart: \"$3\"\n\tend: \"$4\"\n\tlocation: \"$5, Room $6\"\n}\n");
输出:
{
days: [Monday, Wednesday, Friday]
start: "12:00PM"
end: "12:50PM"
location: "CoolGuy Hall, Room 006"
}
{
days: [Thursday]
start: "10:50AM"
end: "12:05PM"
location: "Epic Science, Room 121"
}
如果您有任何其他问题或在理解我的代码的任何部分时遇到困难,请随意发表评论......