PHP : Remove words less than 3 characters in unicode text

前端 未结 2 624

I use these regex to remove words less than 3 characters :

$str = preg_replace(\"!\\\\b\\\\w{1,3}\\\\b!\", \"\", $str);  

and

$         


        
相关标签:
2条回答
  • 2021-01-26 08:10

    Use the u modifier for UTF-8 support:

    /\b\w{1,2}\b/u
    
    0 讨论(0)
  • 2021-01-26 08:12
    function RemoveLess($String,$Char=2)
    {
    
        $StringArray=explode (" ",$String);
    
        foreach ($StringArray as &$Word) 
        {
            if (mb_strlen($Word,"UTF-8")>$Char)
            {
                $Str.=$Word." ";
            }
        }
    
        return trim($Str);
    
    }
    
    
    $text="any text here - لا اله إلا الله محمد رسول الله";
    
    echo RemoveLess($text);
    
    0 讨论(0)
提交回复
热议问题