- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
使用名称对数组进行排序我有一个数组。
array(0 => Mr. Bala ,1 => Mr. Santhosh, 2 => Mrs. Camel,3 => Mrs. Vinoth);
仅根据姓名升序排列
我的预期输出是
array(
0 => Mr. Bala,
1 => Mrs. Camel,
2 => Mr. Santhosh,
3 => Mr. Vinoth,
);
最佳答案
使用 usort,取字符串的第二部分,按点分割,后加空格
usort($a, function($i1, $i2) {
return strcmp(explode('. ',$i1)[1], explode('. ',$i2)[1]);
});
UPD 由于 Bart Friederichs 的评论
usort($a, function($i1, $i2) {
$t = explode('. ',$i1);
$i1 = (! isset($t[1]) ? $i1 : $t[1]);
$t = explode('. ',$i2);
$i2 = (! isset($t[1]) ? $i2 : $t[1]);
return strcmp($i1, $i2);
});
UPD2 使其不区分大小写
usort($a, function($i1, $i2) {
$t = explode('. ',$i1);
$i1 = (! isset($t[1]) ? $i1 : $t[1]);
$t = explode('. ',$i2);
$i2 = (! isset($t[1]) ? $i2 : $t[1]);
return strcmp(strtoupper($i1), strtoupper($i2));
});
关于php - 如何使用 PHP 对数组进行排序,忽略 (Mr, Mrs) 或 Some 文章,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37278102/
我创建了一个正则表达式,可以提取包含匹配单词的句子。 [^.|?|!]*\[^.|!|?]*[\"!?:\.] 但是,它不适用于句子中含有先生/夫人/博士等的情况。 例如: The adventure
我试图编写正则表达式来识别以开头的名称 Mr.|Mrs. 例如 Mr. A, Mrs. B. 我尝试了几种表达方式。这些正则表达式已在在线工具 pythonregex.com 上进行检查。 。使用的测
我正在通过 do while 语句在姓名前使用 Mr 或 ms 或 Mrs 对输入姓名进行验证。我应该在 while 部分填写什么? 它是使用 strcmp 还是其他什么? 编码示例 do{
所以我有看起来像这样的数据: 姓名 标题 称呼 能源部 J先生和E夫人 约翰和伊莱恩 史密斯 K先生和M夫人 肯和玛格丽特 琼斯 R先生 鲍勃 我需要识别包含 Mr & Mrs 的行,并给他们各自的行
我试图写正则表达式来识别以 MR|MS|THE|DR 开头的名字 例如 HONOURABLE THE CHIEF JUSTICE MR. JUSTICE 1 VIKRAM NATH
我有一个文件,其中包含一个如下所示的字符串: "TextMr. XxxxxMrs. YyyyyMrs. ZzzzzTextWordLady ZzzzzMr. Xxxxx" 现在,我想用 Python
我有一个问题,我想用句号 (.) 将文本拆分成句子 例如: 先生Bean 是一部英国喜剧电视连续剧,每集 14 集半小时,由罗温·阿特金森 (Rowan Atkinson) 主演。不同的剧集由阿特金森
我正在使用 grep 将“先生”和“夫人”替换为“先生”。和“夫人”,但每当我输入 gsub("Mr", "Mr.", data$Title) 它还会导致所有“夫人”变成“先生”,这不完全是我正在寻找
使用名称对数组进行排序我有一个数组。 array(0 => Mr. Bala ,1 => Mr. Santhosh, 2 => Mrs. Camel,3 => Mrs. Vinoth); 仅根据姓名
我是一名优秀的程序员,十分优秀!