need help finding repetitive enclosed patterns
Posted: Sat Nov 13, 2010 1:35 pm
Hi all,
The search string I have looks like this:
"XXXX !M 123 J : 3am 4am !T 124 N : 3am 4am !F 125 D : 3am 4am 7am 6am XXXX !M 223 M : 2am 3am 7am 6am !T 224 J : 4am !S 225 O : 3am 4am XXXX !M 323 A : 6am !S 324 J : 7am !W 325 F : 3am 7am 6am "
So there is an unknown number of big blocks starting with XXXX, and there is unknown number of smaller blocks inside each big one starting with "!"
Each small block starts with a letter, one out of certain known set, followed by some digits, then another letter from a known set, semicolon and some time data of an unknown length.
I'd like to write a regexp for preg_match_all, which will extract time data into a two dimensional indexed array:
the first dimension follows big blocks, the second - small blocks, and array elements hold the time data, like a[0][0] = "3am 4am ", a[0][2] = "3am 4am 7am 6am" ... a[2][2] = "3am 7am 6am ".
Thanks!
The search string I have looks like this:
"XXXX !M 123 J : 3am 4am !T 124 N : 3am 4am !F 125 D : 3am 4am 7am 6am XXXX !M 223 M : 2am 3am 7am 6am !T 224 J : 4am !S 225 O : 3am 4am XXXX !M 323 A : 6am !S 324 J : 7am !W 325 F : 3am 7am 6am "
So there is an unknown number of big blocks starting with XXXX, and there is unknown number of smaller blocks inside each big one starting with "!"
Each small block starts with a letter, one out of certain known set, followed by some digits, then another letter from a known set, semicolon and some time data of an unknown length.
I'd like to write a regexp for preg_match_all, which will extract time data into a two dimensional indexed array:
the first dimension follows big blocks, the second - small blocks, and array elements hold the time data, like a[0][0] = "3am 4am ", a[0][2] = "3am 4am 7am 6am" ... a[2][2] = "3am 7am 6am ".
Thanks!