C# 字符串大写转小写,小写转大写,数字保留,其他除外
又是一道面试题,我只想到两种方式:
第一种:循环字符串,判断每个字符串的类型,再根据类型对该字符进行操作(转大写、转小写、不变或舍弃)
static void Main(string[] args)
{
//大写转小写,小写转大写,数字保留,其他除外
string str = "Aa Bb 123!@#"; //测试字符串
string newStr = string.Empty; //用于存放新字符串 //循环字符串
foreach (char item in str)
{
if (item >= 'a' && item <= 'z')
{
//小写字母转大写
newStr += item.ToString().ToUpper();
}
else if (item >= 'A' && item <= 'Z')
{
//大写字母转小写
newStr += item.ToString().ToLower();
}
else if (item >= '0' && item <= '9')
{
//数字不变
newStr += item.ToString();
}
}
//打印
System.Console.WriteLine(newStr);
System.Console.ReadLine();
}
第二种:将字符串转为byte[],循环byte[],使用ASCII码进行判断
static void Main(string[] args)
{
//大写转小写,小写转大写,数字保留,其他除外
string str = "Aa Bb 123!@#"; //测试字符串
string newStr = string.Empty; //用于存放新字符串 //字符串-->byte[]
ASCIIEncoding ascii = new ASCIIEncoding();
byte[] bytes = ascii.GetBytes(str); //循环byte[]
foreach (byte item in bytes)
{
//临时存放
byte[] temp = new byte[] { item }; if (item >= 97 && item <= 122)
{
//小写字母转大写
newStr += ascii.GetString(temp).ToUpper();
}
else if (item >= 65 && item <= 90)
{
//大写字母转小写
newStr += ascii.GetString(temp).ToLower();
}
else if (item >= 48 && item <= 57)
{
//数字不变
newStr += ascii.GetString(temp);
}
}
//打印
System.Console.WriteLine(newStr);
System.Console.ReadLine();
}
备注:数字,字母的ASCII码对照表
/*
0~9数字对应十进制48-57
a~z字母对应的十进制97-122十六进制61-7A
A~Z字母对应的十进制65-90十六进制41-5A
*/
结果打印:

C# 字符串大写转小写,小写转大写,数字保留,其他除外的更多相关文章
- Java判断一个字符串中有多少大写字母、小写字母和数字
Java判断一个字符串中有多少大写字母.小写字母和数字 思路: 大写字母就是A-Z之间,小写字母是a-z之间,数字就是0-9之间,于是做判断就好:用到的String知识点,遍历字符串, 长度方法len ...
- python title() upper() lower() 以首字母大写的方式显示每个单词/将字符串改为全部大写或全部小写
以首字母大写的方式显示每个单词 [root@chenbj python]# cat name.py #!/usr/bin/env python # _*_ coding:utf-8 _*_ name ...
- Expression构建DataTable to Entity 映射委托 sqlserver 数据库里面金额类型为什么不建议用float,实例告诉你为什么不能。 sql server 多行数据合并成一列 C# 字符串大写转小写,小写转大写,数字保留,其他除外 从0开始用U盘制作启动盘装Windows10系统(联想R720笔记本)并永久激活方法 纯CSS打造淘宝导航菜单栏 C# Winform
Expression构建DataTable to Entity 映射委托 1 namespace Echofool.Utility.Common { 2 using System; 3 using ...
- toUpperCase(),toLowerCase()将字符串中的英文转换为全大写或全小写
package seday01;/** * String toUpperCase() * String toLowerCase() * 将字符串中的英文转换为全大写或全小写 * @author xin ...
- 【C语言】创建一个函数,利用该函数将字符串中的小写字母转换为大写字母
原理: 这类题目主要通过ASCII(美国信息交换标准代码)码差值实现,A对应ASCII码十进制数字是65,a对应ASCII码十进制数字是97,即大小写字母之间ASCII码差值为32,想要将大写字母转换 ...
- Day_12【集合】扩展案例3_产生10个长度为10,不能重复,由数字0-9,小写字母和大写字母组成的字符串
分析以下需求,并用代码实现 1.产生10个1-20之间的随机数要求随机数不能重复 2.产生10个长度为10的不能重复的字符串(里面只能出现大写字母.小写字母.0-9的数字),并遍历打印输出 代码 pa ...
- Day_11【集合】扩展案例2_使用普通for循环获取集合中索引为3的元素并打印,统计集合中包含字符串"def"的数量,删除集合中的所有字符串",将集合中每个元素中的小写字母变成大写字母def",
分析以下需求,并用代码实现 1.定义ArrayList集合,存入多个字符串"abc" "def" "efg" "def" ...
- 【C语言】(数组)C语言字符串中的小写字母转换为大写字母
先判断后转化 原理: 这类题目主要通过ASCII(美国信息交换标准代码)码差值实现,A对应ASCII码十进制数字是65,a对应ASCII码十进制数字是97,即大小写字母之间ASCII码差值为32,想要 ...
- 【Python实践-6】将不规范的英文名字,变为首字母大写,其他小写的规范名字
#利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字. def f1(s): s=s.capitalize() return s list1= ['adam', 'L ...
随机推荐
- c语言模拟c++的继承和多态
//C++中的继承与多态 struct A { virtual void fun() //C++中的多态:通过虚函数实现 { cout << "A:fun()" < ...
- 配置微信jssdk自定义分享
前段时间做这个功能的时候遇到这个问题,之前的话是微信自动抓取界面第一张图,现在微信更新api,必须自行配置,接入jssdk,才能实现该功能. 详细可以查看微信的jssdk文档 微信官方开发者文档 ...
- Forward团队-爬虫豆瓣top250项目-项目进度
项目地址:https://github.com/xyhcq/top250 我们的项目是爬取豆瓣top250的电影的信息,在做这个项目前,我们都没有经验,完全是从零开始,过程中也遇到了很多困难,不过我们 ...
- 请求转发(forward)和请求重定向(redirect)的区别(转)
作者:@haimishasha本文为作者原创,转载请注明出处:https://www.cnblogs.com/haimishasha/p/5952129.html 用户向服务器发送了一次HTTP请求, ...
- BASH 基本语法
本节内容 1. 什么是shell script 2. 变量 3. 运算符 4. 流程控制 5. 函数 6. 计划任务 crontab 一 什么是shell script 将OS命令堆积到 ...
- PHPCMS9.6.0最新版SQL注入和前台GETSHELL漏洞分析 (实验新课)
PHPCMS9.6.0最新版中,由于/modules/attachment/attachments.php的过滤函数的缺陷导致了可以绕过它的过滤机制形成SQL注入漏洞,可导致数据库中数据泄漏. 而且在 ...
- Servlet案例1:用户登录
数据库准备: CREATE DATABASE web; USE web; CREATE TABLE users( id INT PRIMARY KEY AUTO_INCREMENT, username ...
- cc、gcc、g++、CC的区别和联系
gcc是C编译器:g++是C++编译器:linux下cc一般是一个符号连接,指向gcc:gcc和g++都是GUN(组织)的编译器.而CC则一般是makefile里面的一个名字,即宏定义,嘿,因为Lin ...
- 菜鸟在ubuntu 16.04下制作am335x的SD卡启动盘反思
以前只在消费电子平台android和rtos上做软件,每次都是公司的环境现成的,根本不用去想启动加载那部分 的事情,最近在做一个工控机的项目时,接触到了TI的arm335x系列的平台,才发现在嵌入式的 ...
- Liferay7 BPM门户开发之9: 流程表单数据动态映射体系
设计目的: 每个流程表单涉及不同的表单变量.比如请假流程有3个任务节点,分别是 Task1:开始流程,填写请假人.请假原因.请假开始时间.请假结束时间: Task2:上级审批,填写是否同意,审批意见: ...