php - 我只想从一个多于和少于 3 个字符的数组中获取单词列表,但我该怎么做呢?
问题描述
$name = array('jake', 'rita', 'ali', 'addert', 'siryteee', 'skeueei', 'wsewwauie', 'aaaaweefio');
$vowels = array('a', 'e', 'i', 'o', 'u');
$massiv = [];
$vowel = [];
for ($i = 0; $i < count($name); $i++) {
$massiv[] = $name[$i];
for ($j = 0; $j < count($vowels); $j++) {
$vowel[] = $vowels[$j];
}
}
if (count($massiv[$vowel] >= 3) {
print_r($massiv);
}
解决方案
您可以使用正则表达式来计算元音的数量。
我只想从一个多于和少于 3 个字符的数组中获取单词列表,但我该怎么做呢?
我假设您想要 2 个数组,其中包含一个包含超过 3 个元音的名称列表,另一个包含少于 3 个元音的名称列表。注意 - 我故意省略了有 3 个元音的名字,因为我不知道应该把它们放在哪个列表中。你应该能够很容易地添加它。
http://sandbox.onlinephpfunctions.com/code/69f838a4dca56f651a521854636212c545dddbb2
<?php
$names = array('jake', 'rita', 'ali', 'addert', 'siryteee', 'skeueei', 'wsewwauie', 'aaaaweefio');
$moreThanThree = [];
$lessThanThree = [];
foreach ($names as $name) {
$count = preg_match_all('/[aeiou]/i', $name, $matches);
if ($count > 3) {
$moreThanThree[] = $name;
}
if ($count < 3) {
$lessThanThree[] = $name;
}
}
// You now have 2 arrays - $moreThanThree & $lessThanThree
var_dump($moreThanThree);
var_dump($lessThanThree);
推荐阅读
- powershell - 从两个对象构造自定义对象
- spring-boot - 服务器发送事件 - 几次断开连接后流未重新连接
- javascript - 如何正确定义函数的数组参数?
- python - 不理解地计算总和
- javascript - 如何使用数组包含函数检查对象数组中的对象相等性?
- apache-spark - 所需的执行程序内存高于此集群的最大阈值
- reactjs - 如何使用 webpack ManifestPlugin 为具有 2 个入口点的反应项目创建 2 个不同的 manifest.json 文件?
- dictionary - 为什么我不能在这里创建一个简单的字典
- reactjs - 使用 Next.js 进行 S3 上传 - 面临问题
- angular - 在订阅之前解析为 observable 的值