Re: Re: Substr by words
| From: | Gustavo Narea | Date: | Mon, 31 Oct 2005 12:47:33 +0000 |
| Subject: | Re: Re: Substr by words | ||
| References: | 1 2 3 4 5 6 7 8 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-224876@lists.php.net to get a copy of this message | ||
Hello, Marcus.
No, you are right. Your script is better.
I just forgot something I learned about REGEXES: The REGEX engine is eager. Thus, in this case, It's not necessary to use the caret. The REGEX engine will start from the first word It finds.
I would use yours ;-).
Best regards,
Gustavo Narea.
PHP Documentation - Spanish Translation Team.
Valencia, Venezuela.
Marcus Bointon wrote:
On 31 Oct 2005, at 03:29, Gustavo Narea wrote:I think It is OK what I said about the caret, but what we need to change is the position of \W*: Your suggestion: /(\b\w+\b\W*){1,$MaxWords}/ My suggestion: /^(\W*\b\w+\b){1,$MaxWords}/ We need the *first* ($MaxWords)th words.I makes no difference - they will both work. Mine doesn't care where the first word starts because it doesn't use ^, and yours doesn't care where the first word starts because it's got ^ followed by \W*. Your overall match will end up with leading spaces, mine will end up with trailing spaces - the subsequent trim fixes them both. I like mine because it has 1 less char ;^) Ultimately, if it works for you, great! Marcus