PHP:如何获取字符串中出现特定次数的所有子字符串

PHP:如何获取字符串中出现特定次数的所有子字符串,php,substring,Php,Substring,在php中,我可以使用什么函数返回字符串中出现>=13次的所有子字符串?你能举例说明如何使用它吗? 干杯 例如: 我有一个子串,比如“在同一个地方下雨,在新地方下雨,在旧地方下雨”。我想打印出字符串中出现3次或更多次的所有子字符串。答案将给出一个数组(rain、in、The、place)您要求使用子字符串,但示例显示您需要单词: $words=str\u word\u count($string,1); $frequency=数组\计数\值($words); $result=array_filt

在php中,我可以使用什么函数返回字符串中出现>=13次的所有子字符串?你能举例说明如何使用它吗? 干杯

例如:
我有一个子串,比如“在同一个地方下雨,在新地方下雨,在旧地方下雨”。我想打印出字符串中出现3次或更多次的所有子字符串。答案将给出一个数组(rain、in、The、place)

您要求使用子字符串,但示例显示您需要单词:

$words=str\u word\u count($string,1);
$frequency=数组\计数\值($words);
$result=array_filter($frequency,function($x){return$x>=13;});
对于非英语和非西班牙语语言,必须将包含所需语言中所有字符的字符串作为第三个参数传递给
str\u word\u count
方法


我也不知道你为什么问数组。

你试过做什么,你能添加你的试用码吗,这样我们就可以从there@Theophilus-Omoregbee我还没有找到一个这样的开始示例,我在数组上使用了array_filter,但在字符串上没有找到。我开始相信这是不可能的,但我决定去问专家们。好的,你还可以给出一个合乎逻辑的例子,说明你想在你的问题中说什么吗?这在php中是不可能的吗?它没有功能吗?谢谢你的回复!谢谢。使用我的字符串运行代码,但返回空数组。Dreamweaver在下面的行中发现一个错误:$result=array_filter($frequency,function($x){return$x>=13;});我一直从php手册中的示例中得到相同的错误,但不知道如何更正它。@user3152377您使用的php版本是什么,您可以分享您的字符串示例吗?上面的示例使用匿名函数,如果您的PHP很旧并且不支持匿名函数,您可以将
函数($x){return$x>=13;}
移动到
函数示例($x){return$x>=13;}
中,并使用
数组过滤器($frequency,'Example'))
若要将此函数仅用于其名称。@user3152377,并且如果您仅在Dreamweaver(编辑器,而不是PHP解释器本身)中看到错误,请尝试查找设置并检查它是否有PHP版本的下拉列表。看起来您的编辑器试图验证PHPV5.2或更旧版本的代码。谢谢!我是不正确的,你的代码是正确的,我在字符串中使用了数字,但没有意识到这些需要在语句中注明。就像我在下面做的:$somearray=str_word_count($resultround,1,'1234567890:@&');