全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C#字符串自增自减算法详解

C#实现字符串自增和自减运算,供大家参考,具体内容如下

1.数字从 0-9 变化;

2.字母从 A-Z、a-z 变化;

3.其它字符跳过;

4.以上变化依据其Ascii码值;

/// <summary>
 /// 字符串运算
 /// </summary>
 public class StringOperation
 {


  /// <summary>
  /// 通过ASCII码值,对字符串自增1
  /// </summary>
  /// <param name="pStr">输入字符串</param>
  /// <returns></returns>
  public static string StringIncreaseOne(string pStr)
  {
   var vRetStr = pStr;
   if (0 == pStr.Length)
   {
    vRetStr = "1";
   }
   else
   {
    // 将最后一个字符与之前的字符串分开
    string vOtherStr = pStr.Substring(0, pStr.Length - 1);
    int vIntChar = (int)pStr[pStr.Length - 1]; //转ASCII码值
    if (48 <= vIntChar && vIntChar <= 57) //是数字(0 - 9)
    {
     vIntChar++; //自增1
     if (vIntChar == 58) // 进一位
     {
      vIntChar = 48;
      vOtherStr = StringIncreaseOne(vOtherStr);
     }
    }
    else if (65 <= vIntChar && vIntChar <= 90) //是字母(A - Z)
    {
     vIntChar++; //自增1
     if (vIntChar == 91) 
     {
      vIntChar = 65;
      vOtherStr = StringIncreaseOne(vOtherStr);
     }
    }
    else if (97 <= vIntChar && vIntChar <= 122) //是字母(a - z)
    {
     vIntChar++; //自增1
     if (vIntChar == 123)
     {
      vIntChar = 97;
      vOtherStr = StringIncreaseOne(vOtherStr); 
     }
    }
    else // 其它字符 -> 跳过
    {
     vOtherStr = StringIncreaseOne(vOtherStr);
    }
    vRetStr = vOtherStr + (char)vIntChar;
   }
   return vRetStr;
  }

  /// <summary>
  /// 通过ASCII码值,对字符串自减1
  /// </summary>
  /// <param name="pStr">输入字符串</param>
  /// <returns></returns>
  public static string StringReducingOne(string pStr)
  {
   var vRetStr = pStr;
   if (0 == pStr.Length)
   {
    vRetStr = "9";
   }
   else
   {
    string vOtherStr = pStr.Substring(0, pStr.Length - 1);
    int vIntChar = (int)pStr[pStr.Length - 1]; //转ASCII码值
    if (48 <= vIntChar && vIntChar <= 57) //是数字(0 - 9)
    {
     vIntChar--;
     if (vIntChar == 47)
     {
      vIntChar = 57;
      vOtherStr = StringReducingOne(vOtherStr);
     }
    }
    else if (65 <= vIntChar && vIntChar <= 90) //是数字(A - Z)
    {
     vIntChar--; 
     if (vIntChar == 64)
     {
      vIntChar = 90;
      vOtherStr = StringReducingOne(vOtherStr);
     }
    }
    else if (97 <= vIntChar && vIntChar <= 122) //是数字(a - z)
    {
     vIntChar--;
     if (vIntChar == 96)
     {
      vIntChar = 122;
      vOtherStr = StringReducingOne(vOtherStr);
     }
    }
    else // 其它字符 -> 跳过
    {
     vOtherStr = StringReducingOne(vOtherStr);
    }
    vRetStr = vOtherStr + (char)vIntChar;
   }
   return vRetStr;
  }

  /// <summary>
  /// 通过ASCII码值,对字符串自增
  /// </summary>
  /// <param name="pStr">输入字符串</param>
  /// <param name="pCount">自增个数</param>
  /// <returns></returns>
  public static string StringIncrease(string pStr, int pCount)
  {
   string vRetStr = pStr;
   for (int i = 0; i < pCount; i++)
   {
    vRetStr = StringIncreaseOne(vRetStr);
   }
   return vRetStr;
  }

  /// <summary>
  /// 通过ASCII码值,对字符串自减
  /// </summary>
  /// <param name="pStr">输入字符串</param>
  /// <param name="pCount">自减个数</param>
  /// <returns></returns>
  public static string StringReducing(string pStr, int pCount)
  {
   string vRetStr = pStr;
   for (int i = 0; i < pCount; i++)
   {
    vRetStr = StringReducingOne(vRetStr);
   }   
   return vRetStr;
  }
  


 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# C#字符串自增自减  # C#字符串自增  # C#字符串自减  # C#中的那些常用加密算法  # C#实现拼手气红包算法  # c# 实现位图算法(BitMap)  # 经典实例讲解C#递归算法  # 少见的C# RSA算法  # C#排序算法之快速排序解析  # C#实现的二维数组排序算法示例  # C#实现简单的RSA非对称加密算法示例  # 同时兼容JS和C#的RSA加密解密算法详解(对web提交的数据加密传输)  # c# 实现模糊PID控制算法  # 跳过  # 具体内容  # 大家多多  # public  # StringOperation  # ASCII  # lt  # summary  # gt  # static  # string  # StringIncreaseOne  # param  # pStr  # returns  # StringReducing  # vRetStr  # class  # brush  # csharp 


相关文章: 如何自定义建站之星模板颜色并下载新样式?  教程网站设计制作软件,怎么创建自己的一个网站?  ,南京靠谱的征婚网站?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  网站制作知乎推荐,想做自己的网站用什么工具比较好?  建站之星logo尺寸如何设置最合适?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?  常州自助建站:操作简便模板丰富,企业个人快速搭建网站  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?  宝塔建站无法访问?如何排查配置与端口问题?  如何通过虚拟主机空间快速建站?  北京网站制作的公司有哪些,北京白云观官方网站?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法  如何批量查询域名的建站时间记录?  如何用AWS免费套餐快速搭建高效网站?  C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换  学校建站服务器如何选型才能满足性能需求?  如何在橙子建站上传落地页?操作指南详解  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?  山东网站制作公司有哪些,山东大源集团官网?  常州自助建站费用包含哪些项目?  在线制作视频网站免费,都有哪些好的动漫网站?  建站为何优先选择香港服务器?  攀枝花网站建设,攀枝花营业执照网上怎么年审?  广东企业建站网站优化与SEO营销核心策略指南  网站制作费用多少钱,一个网站的运营,需要哪些费用?  高性价比服务器租赁——企业级配置与24小时运维服务  视频网站制作教程,怎么样制作优酷网的小视频?  建站之星如何防范黑客攻击与数据泄露?  如何选择服务器才能高效搭建专属网站?  早安海报制作网站推荐大全,企业早安海报怎么每天更换?  如何解决ASP生成WAP建站中文乱码问题?  如何在阿里云通过域名搭建网站?  宁波免费建站如何选择可靠模板与平台?  如何选择适合PHP云建站的开源框架?  模具网站制作流程,如何找模具客户?  简单实现Android文件上传  建站之星多图banner生成与模板自定义指南  建站之星导航如何优化提升用户体验?  官网自助建站平台指南:在线制作、快速建站与模板选择全解析  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  如何在香港免费服务器上快速搭建网站?  建站之星如何通过成品分离优化网站效率?  ,柠檬视频怎样兑换vip?  建站之星免费版是否永久可用? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。