1

我需要在一个单词字符串中找到第一个元音的位置。例如。

  • garbage会回来1
  • plastic会回来2
  • apple会回来0

我是初学者,所以我很难做到这一点。我想我需要一个带有数组或正则表达式的循环。

4

3 回答 3

14

使用该strcspn功能。它将返回与您指定的任何字符不匹配的开头字符串的长度。

$pos = strcspn(strtolower($str), "aeiou"); // and sometimes y
于 2013-05-16T05:36:28.730 回答
1

<?php $mystring="find first vowel in a string";
$vowel=array();
$vowel['0'] = stripos($mystring,'a');
$vowel['1'] = stripos($mystring,'e');
$vowel['2'] = stripos($mystring,'i');
$vowel['3'] = stripos($mystring,'o');
$vowel['4'] = stripos($mystring,'u');
$min=99999;
for($i=0; $i<5;$i++){
if ($vowel[$i] !== false) {
if($min>$vowel[$i]){
$min=$vowel[$i];
}//end if
}//end if
}end for
if($min==99999){
echo "No vowel found.";
}else{
echo "vowel found at position :".$min;
}
?>

于 2013-05-16T06:08:47.517 回答
0

strpos — 查找字符串中子字符串第一次出现的位置

例如==

  $email  = 'name@example.com';
  $domain = strpos($email, '@');
  echo $domain; // prints 4
于 2013-05-16T05:35:50.263 回答