Split string on non-alphanumerics in PHP? Is it possible with php's native function?
Posted
by
Jehanzeb.Malik
on Stack Overflow
See other posts from Stack Overflow
or by Jehanzeb.Malik
Published on 2012-10-24T10:44:44Z
Indexed on
2012/10/24
11:01 UTC
Read the original article
Hit count: 260
I was trying to split a string on non-alphanumeric characters or simple put I want to split words. The approach that immediately came to my mind is to use regular expressions.
Example:
$string = 'php_php-php php';
$splitArr = preg_split('/[^a-z0-9]/i', $string);
But there are two problems that I see with this approach.
- It is not a native php function, and is totally dependent on the PCRE Library running on server.
- An equally important problem is that what if I have punctuation in a word
Example:
$string = 'U.S.A-men's-vote';
$splitArr = preg_split('/[^a-z0-9]/i', $string);
Now this will spilt the string as[{U}{S}{A}{men}{s}{vote}]
But I want it as[{U.S.A}{men's}{vote}]
So my question is that:
- How can we split them according to words?
- Is there a possibility to do it with php native function or in some other way where we are not dependent?
Regards
© Stack Overflow or respective owner