php – 删除长单词正则表达式
发布时间:2020-12-13 21:42:43 所属栏目:PHP教程 来源:网络整理
导读:我想如何从字符串中删除长字.大于长度的单词n. 我尝试了以下方法: //remove words which have more than 5 characters from string$s = 'abba bbbbbbbbbbbb 1234567 zxcee ytytytytytytytyt zczc xyz';echo preg_replace("~s(.{5,})s~isU"," ",$s); 给出
我想如何从字符串中删除长字.大于长度的单词n.
我尝试了以下方法: //remove words which have more than 5 characters from string $s = 'abba bbbbbbbbbbbb 1234567 zxcee ytytytytytytytyt zczc xyz'; echo preg_replace("~s(.{5,})s~isU"," ",$s); 给出输出(不正确): abba 1234567 ytytytytytytytyt zczc xyz 解决方法<?php //remove words which have more than 5 characters from string $s = 'abba bbbbbbbbbbbb 1234567 zxcee ytytytytytytytyt zczc xyz'; $patterns = array( 'long_words' => '/[^s]{5,}/','multiple_spaces' => '/s{2,}/' ); $replacements = array( 'long_words' => '','multiple_spaces' => ' ' ); echo trim(preg_replace($patterns,$replacements,$s)); ?> 输出: abba zczc xyz 更新,以解决您在评论中提出的问题.你可以这样做: <?php //remove words which have more than 5 characters from string $s = '123 ReallyLongStringComesHere 123'; $patterns = array( 'html_space' => '/ /','long_words' => '/[^s]{5,}/' ); $replacements = array( 'html_space' => ' ','long_words' => '','multiple_spaces' => ' ' ); echo str_replace(' ',' ',trim(preg_replace($patterns,$s))); ?> 输出: 123 123 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |