using the regular expression:
$pattern = "/adminvalues = \"\([^']+, '[^']+', MD5\('[^']+'\), '[^']+','[^']+','[^']+',[^']+,[^']+\)\";/";
preg_match($pattern, $data, $results);
print_r($results);
searching the following text (values within brackets can change... hence the need for regex...):
adminvalues = "(NULL, 'Admin12345', 'MD5(Admin12345)', 'Admin12345', 'Admin12345', 5, 0, 0)";
so am looking for a pattern (in reg-ex) that matches essentially the following (I think...):
[adminvalues = "(] [any character] [, '] [any character] [', MD5('] [any character] ['), '] [any character] [', '] [any character] [', ] [any character] [, ] [any character] [, ] [any character] [)";]
Where: Any character is one or more of any combination of (letter / number / symbol)
I get no matches using the PHP code at the top - so I've obviously done something wrong! I just can't spot the error myself. (I only started using regex this morning really...) What have I done wrong? :)
Solve: (Thanks to Amal Murali)
Using htmlspecialchars() when reading the php script being used as $data
(rather than just to display contents)