根据php中的字长删除Words from String

时间:2013-09-17 18:29:01

标签: php string

我想删除字符串中长度超过2个字母的单词。例如:

$string = "tx texas al alabama ca california";

我想删除那些包含两个以上字符的单词,这样输出就像:     $ output =“tx al ca”;

2 个答案:

答案 0 :(得分:2)

echo preg_replace('/[a-z]{3,}/','',$string);

答案 1 :(得分:1)

可能不是最好的解决方案,但你可以用空格作为分隔符来爆炸字符串,循环遍历它,并创建一个新数组并在长度小于2的情况下将单词推送到它:

$string = "tx texas al alabama ca california";
$words = explode(' ', $string);

foreach ($words as $word) {
    if(strlen($word) <= 2) {
        $result[] = $word; // push word into result array
    }
}

$output = implode(' ', $result); // re-create the string

输出:

tx al ca

Demo!