die letzte klammer muss als optional: (([\w])?) bzw (\W?) , richtig!?
so vielleicht:
define ('KEY', "VALUE \n'"); // dghdfg /* */
/([\s]*'"['"][\s]*,[\s]*'"['"][\s]*)[\s]*;[\s]*(//)*(.*))/
mit $matches=preg_split( $needle, $string, -1,PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY)
[0] => define (
[1] => 'KEY' , "VALUE \n'"); // dghdfg /* */
[2] => KEY
[3] => VALUE \n'
[4] => //
[5] => dghdfg /* */
lieben Gruß Florian