I need to get everything before “On Sun, May 27, 2012 at 6:25 AM,”
I am hoping to get everything before “On xxx, xxx xx, xxxx at xx:xx xx,”
The problem here is that May, 27, and 6 are all variable in length. What is the best tool for this job. Due to my lack of experience with regex I am trying to use explode() but it doesn’t appear it can do the job here. Is regex my best option?
[EDIT]
I ended up using a combination of answers. I went with:
preg_match(“/(.*)On\s+(Sun|Sat|Fri|Thu|Wed|Tue|Mon),\s+(January|February|March|April|May|June|July|August|September|October|November|December)\s+\d?\d,\s+\d{4}\s+at\s+\d?\d:\d\d\s+[AP]M,/i”, $to, $end);
Something like this, I guess:
[EDIT]
As per the comment: I have added support for case insensitive (by adding the
imodifier to the end of the regex). I have also change the spaces in the expression to\sto allow any whitespace character, and added+to allow multiples spaces between words.I haven’t changed it to support long day names or short month names, as the questions specified that month name was variable in length but didn’t specify day name as being variable. However, it should be trivial enough to add these variants if required.
[EDIT]
This code works for the example given in your comment.
Hope that helps.