PHP |以自然和标准顺序对字符串数组进行排序
原文:https://www . geesforgeks . org/PHP-sort-array-strings-natural-standard-orders/
给你一个字符串数组。您必须以标准方式(字母大小写很重要)和自然方式(字母大小写无关紧要)对给定的数组进行排序。
Input : arr[] = {"Geeks", "for", "geeks"}
Output : Standard sorting: Geeks for geeks
Natural sorting: for Geeks geeks
Input : arr[] = {"Code", "at", "geeks", "Practice"}
Output : Standard sorting: Code Practice at geeks
Natural sorting: at Code geeks Practice
如果您试图以简单的方式对字符串数组进行排序,您可以简单地创建一个用于字符比较的比较函数,并对给定的字符串数组进行排序。但这将区分小写字母和大写字母。要解决这个问题,如果你想在 c/java 中解决这个问题,你必须编写自己的比较函数,专门处理字母的情况。但是如果我们选择 PHP 作为我们的语言,那么我们可以在 natcasesort()的帮助下直接对它进行排序。 natcasesort():它对字符串进行排序,而不管它们的大小写。意思是“A”&“A”在这种排序方法中被视为小于“B”&“B”。
// declare array
$arr = array ("Hello", "to", "geeks", "for", "GEEks");
// Standard sort
$standard_result = sort($arr);
print_r($standart_result);
// natural sort
$natural_result = natcasesort($arr);
print_r($natural_result);
<?php
// PHP program to sort an array
// in standard and natural ways.
// function to print array
function printArray ($arr)
{
foreach ($arr as $value) {
echo "$value ";
}
}
// declare array
$arr = array ("Hello", "to", "geeks", "for", "GEEks");
// Standard sort
$standard_result = $arr;
sort($standard_result);
echo "Array after Standard sorting: ";
printArray($standard_result);
// natural sort
$natural_result = $arr;
natcasesort($natural_result);
echo "\nArray after Natural sorting: ";
printArray($natural_result);
?>
输出:
Array after Standard sorting: GEEks Hello for geeks to
Array after Natural sorting: for geeks GEEks Hello to
版权属于:月萌API www.moonapi.com,转载请注明出处