zoukankan      html  css  js  c++  java
  • 反转一个英文句子中的单词,并且对应位置大小写不改变

    输入一句英文句子,只有英文字(a-z, A-Z)、每个字之间仅以一个空格分格,前后没有空格。
    返回的是要把每一个字的字母顺序倒转写,但字的顺序和字母的大小写位置则保持不変。

     1 function stringReverse($str){
     2     //将每个单词转为小写并反转
     3     $tmp = strtolower($str);
     4     $tmp = implode(" ",array_map("strrev",explode(" ", $tmp)));
     5     $strlen = strlen($tmp);
     6 
     7     //遍历原始字符串,将新字符串对应位置字符转为大写
     8     while($strlen > 0){
     9         $strlen--;
    10         //找出原来的字符串所有大写字母的位置
    11         $ord = ord($str{$strlen});
    12 
    13         //A-Z:65-90 a-z:97-122
    14         if($ord > 64 && $ord < 91){
    15             $tmp{$strlen} = strtoupper($tmp{$strlen});
    16         }
    17     }
    18 
    19     return $tmp;
    20 }
    21 echo stringReverse('This is an Apple on eBay');//Siht si na Elppa no yAbe
  • 相关阅读:
    关于素数的具体问题
    Scala Apply
    Scala内部类
    Scala 类和对象
    Scala Tuple类型
    Scala数组
    sql server 游标
    表变量和临时表详解
    子查询详解
    EXEC 和 SP_EXECUTESQL的区别
  • 原文地址:https://www.cnblogs.com/justdoyou/p/7153632.html
Copyright © 2011-2022 走看看