Re: Problem with Regular expression

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Wednesday, October 27, 2004, 9:04:14 PM, you wrote:
k> Hi all.
k> I have a problem: i want subs any characters from a string but i don't 
k> have fix the problem.
k> The string that i want to manipulate is the value from a text field of a 
k> search engine.
k> The characters that i want to try substitute is &&, &, +, -, |, ||, or, 
k> and, not in not case-sensitive mode with "".
k> I have create a  pattern like this:

k> $str = "Sybase and PHP not ASP or JSP && Oracle not Andy | Perl || 
k> Python + Ruby";
k> $pattern = 
k> "/(\band\b)|(\bnot\b)|(\bor\b)|(\b&&\b)|(\b&\b)|(\b\.\b)|(\b\+\b)|(\b\|\|\b)|(\b\|\b)/i";
k> echo $str = preg_replace($pattern, "", $str, -1);

k> But characters like + && don't subs with "".
k> Thanks to all and sorry my bad language


this may get you started

preg_replace('!\s(and|not|or|&&|\||\|\||)\s|(\+|-\s*)!i',' ',$string);

you have to replace with ' ' or the words will run into each other and you may
also get the + or - with no trailing space.


-- 
regards,
Tom

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


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux