How can I convert
ereg_replace(".*.(.*)$","\1",$imgfile);
to
preg_replace... ?
?
I'm having trouble with it?
You should know 4 main things to port ereg patterns to preg:
Add delimiters(/): 'pattern' => '/pattern/'
'pattern' => '/pattern/'
Escape delimiter if it is a part of the pattern: 'patt/ern' => '/patt/ern/' Achieve it programmatically in following way: $ereg_pattern = '<div>.+</div>'; $preg_pattern = '/' .addcslashes($ereg_pattern, '/') . '/';
'patt/ern' => '/patt/ern/'
$ereg_pattern = '<div>.+</div>';
$preg_pattern = '/' .addcslashes($ereg_pattern, '/') . '/';
eregi(case-insensitive matching): 'pattern' => '/pattern/i' So, if you are using eregi function for case insenstive matching, just add 'i' in the end of new pattern('/pattern/').
'pattern' => '/pattern/i'
ASCII values: In ereg, if you use number in the pattern, it is assumed that you are referring to the ASCII of a character. But in preg, number is not treated as ASCII value. So, if your pattern contain ASCII value in the ereg expression(for example: new line, tabs etc) then convert it to hexadecimal and prefix it with x. Example: 9(tab) becomes x9 or alternatively use .
Example: 9(tab) becomes x9 or alternatively use .
Hope this will help.
2.1m questions
2.1m answers
60 comments
57.0k users