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小时内与您取得联系。