Re: Re: Dynamic Regex
| From: | Gerard Samuel | Date: | Thu, 09 Jan 2003 05:24:56 +0000 |
| Subject: | Re: Re: Dynamic Regex | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-130869@lists.php.net to get a copy of this message | ||
What you suggested is what I was trying before. My original example was incorrect.
Here is an good example for the variable holding the pattern ->
$foo = '/\[url\]([a-z]+://.*?)\[/url\]/';
This pattern would not work, but if I change it to
$foo = '#\[url\]([a-z]+://.*?)\[/url\]#';
It does work.
Not complaining but just trying to figure out why the first version doesn't work for future references.
Thanks
Greg Beaver wrote:
Hi Gerard, all the preg_* functions require delimiters surrounding regular expressions. $foo = '\[this\](.*?)that'; should be by default: $foo = '/\[this\](.*?)that/'; the code you tried uses # as the delimiter instead of /, an option preg_* allows Take care, Greg -- phpDocumentor http://www.phpdoc.org "Gerard Samuel" <gsam@trini0.org> wrote in message news:3E1CC193.90605@trini0.org...-- Gerard Samuel http://www.trini0.org:81/ http://dev.trini0.org:81/The example doesn't have to make sense, but Im looking for the correct syntax for $foo. I was trying -> $foo = '\[this\](.*?)that'; $bar = 'the other'; $str = preg_replace($foo, $bar, $other_string); But that doesn't work. I came across an example where the syntax of $foo is in -> $foo = '#\[this\](.*?)that#'; The second syntax of $foo works. I was wondering on the meaning of # in the string?? Thanks -- Gerard Samuel http://www.trini0.org:81/ http://dev.trini0.org:81/