Hi Robin

Many thanks for this,

how would one extend this to support the following:
$str = "insert into userComment (userID, userName, userSurname) values (0, 
'Leon', 'mcDonald')";

one does not want

$str = "insert into user_comment (user_id, user_name, user_surname) values (0, 
'Leon', 'mc_donald')";

unfortunately lookbehind assertions does not support non-fixed length chars so
/(?<=(?<!')[a-z])([A-Z]+)/e will work for 'mDonald' but the following will not 
work.

/(?<=(?<!')([a-z]+))([A-Z]+)/e

Any ideas?

Many thanks
--
Leon

> <?php
> $str = "insert into userComment (userID, userName, userSurname) values
> (0, 'Leon', 'Vismer')";
>
> $match  = '/(?<=[a-z])([A-Z]+)/e';
> $replace = 'strtolower("_$1")';
> print preg_replace($match, $replace, $str);
> ?>
>
> insert into user_comment (user_id, user_name, user_surname) values (0,
> 'Leon', 'Vismer')
>
>  -robin

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to