String类的使用 Part1
String类的属性
1:Chars属性
获取当前 String 对象中位于指定位置的 Char 对象。
2:Length属性
获取当前 String 对象中的字符数。
eg:获取字符串中 字母, 数字, 控制字符的个数
namespace StringTest
{
class Program
{
static void Main(string[] args)
{
Console.Write("请输入一个字符串:");
string str1 = Console.ReadLine();
int letter = , digit = , control = , other = ; for (int i = ; i < str1.Length; i++) //使用 Length 属性
{
if (Char.IsLetter(str1[i])) //使用 Chars属性
letter++;
else if (Char.IsDigit(str1[i]))
digit++;
else if (Char.IsControl(str1[i]))
control++;
else
other++;
}
Console.WriteLine("字符串长度为:{0}\n字符个数:{1}\n数字个数:{2}\n控制字符个数:{3}\n其他字符个数:{4}\n", str1.Length, letter, digit, control, other);
}
}
}
结果:

String类的常用方法总结:
1:大小写转换
String.ToLower() -- 返回此字符串转换为小写形式的副本。
String.ToUpper()-- 返回此字符串转换为大写形式的副本。
eg:
string str = "helloTEST";
Console.WriteLine("小写:{0}\n大写:{1}",str.ToLower(),str.ToUpper());
2:移除空格
String. Trim()-- 从当前 String 对象移除所有前导空白字符和尾部空白字符。
eg:
string str = " helloTEST";
Console.WriteLine("{0}", str);
Console.WriteLine("{0}", str.Trim());
结果:

3: 分割字符串函数
String. Split 方法 ( Char[] ) -- 返回的数组元素中不包含分隔符字符
string str = "aaa,bbb,ccc[ddd";
string[] split = str.Split(',', ',', ',', '[');
foreach (string s in split)
{
Console.WriteLine("{0}", s);
}
结果:

String. Split 方法 ( String[] , Int32, StringSplitOptions) //分隔符为字符串 string
//分隔符为字符串 string
string s1 = "我是麦迪我是刘德华我是张学友";
string[] strs = s1.Split(new string[] { "我是" }, StringSplitOptions.RemoveEmptyEntries); //这是按照string字符串为分隔符
foreach (string item in strs)
{
Console.WriteLine(item);
}
结果:

4:截图字符串
String.Substring(Int32) --从此实例检索子字符串。 子字符串从指定的字符位置开始。 字符从0开始数
String.Substring(Int32, Int32) --从此实例检索子字符串。 子字符串从指定的字符位置开始且具有指定的长度。
eg:
string str = "http://www.tangpro.com";
string s1 = str.Substring(); //从第七个字符开始截图
string s2 = str.Substring(, ); //从第七个字符开始截取, 共截取3个字符
Console.WriteLine("{0}\n{1}", s1, s2);
结果:

5:
String.Contains(string value) -- 返回一个值,该值指示指定的 String 对象是否出现在此字符串中。
返回值:如果 value 参数出现在此字符串中,或者 value 为空字符串 (""),则为 true;否则为 false
//查看是否包含某字符串
string str = "http://www.tangpro.com";
bool b =str.Contains("tang");
bool b2 = str.Contains("abc");
Console.WriteLine(b);
Console.WriteLine(b2);
结果:

6:替换某字符
Replace(Char, Char) -- 返回一个新字符串,其中此实例中出现的所有指定 Unicode 字符都替换为另一个指定的 Unicode 字符。
Replace(String, String) -- 返回一个新字符串,其中当前实例中出现的所有指定字符串都替换为另一个指定的字符串。
//替换某字符
string str = "http://www.tangpro.com";
string s1 = str.Replace("com", "net"); //字符串
string s2 = str.Replace('m', 'o'); //字符
Console.WriteLine("{0}\n{1}", s1, s2);
结果:

7:查询一个字符串在某个字符串中的位置
IndexOf(Char) -- 报告指定 Unicode 字符在此字符串中的第一个匹配项的从零开始的索引。
IndexOf(String) -- 报告指定字符串在此实例中的第一个匹配项的从零开始的索引。
////查询一个字符串在某个字符串中的位置
string str = "http://www.tangpro.com";
int n = str.IndexOf("www");
int n1 = str.IndexOf("abc");
Console.WriteLine(n);
Console.WriteLine(n1); //若没有该字符串,测返回 -1
结果:

String类的使用 Part1的更多相关文章
- string类运用:特殊的翻译
特殊的翻译 小明的工作是对一串英语字符进行特殊的翻译:当出现连续且相同的小写字母时,须替换成该字母的大写形式,在大写字母的后面紧跟该小写字母此次连续出现的个数:与此同时,把连续的小写字母串的左侧和右侧 ...
- 标准库String类
下面的程序并没有把String类的所有成员方法实现,只参考教程写了大部分重要的成员函数. [cpp] view plain copy #include<iostream> #include ...
- 自己实现简单的string类
1.前言 最近看了下<C++Primer>,觉得受益匪浅.不过纸上得来终觉浅,觉知此事须躬行.今天看了类类型,书中简单实现了String类,自己以前也学过C++,不过说来惭愧,以前都是用C ...
- C++ string类的实现
c++中string类的实现 今天面试被考到了, 全给忘记了!!! //string类的实现 #include <iostream> #include <string.h> ...
- String类的功能
String类 标红的为较少出现的 1.判断功能 boolean equals(Object obj) :比较字符串内容是否相同,区分大小写 boolean equalsIg ...
- java基础复习:final,static,以及String类
2.final 1)为啥String是final修饰的呢? 自己答: 答案: 主要是为了“效率” 和 “安全性” 的缘故.若 String允许被继承, 由于它的高度被使用率, 可能会降低程序的性能,所 ...
- String类和StringBuffer类的区别
首先,String和StringBuffer主要有2个区别: (1)String类对象为不可变对象,一旦你修改了String对象的值,隐性重新创建了一个新的对象,释放原String对象,StringB ...
- 05_整理String类的Length()、charAt()、 getChars()、replace()、 toUpperCase()、 toLowerCase()、trim()、toCharArray()使用说明
Question: 整理String类的Length().charAt(). getChars().replace(). toUpperCase(). toLowerCase().trim().toC ...
- 标准C++中的string类的用法总结
标准C++中的string类的用法总结 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有 ...
随机推荐
- mysql颠覆实战笔记(四)--商品系统设计(一):商品主表设计
版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸 ...
- wap网站seo如何优化呢?
从事互联网的人员都知道移动互联网营销是一个大的趋势,但是要怎么去做恐怕还都一筹莫展.由PC端的网络营销的经验和常识来看,首要的是要做好移动端手机网站的优化工作.据观察分析,目前国内的大多数并没有做好手 ...
- javascript里面技巧整理
web develop tools secrets: http://jinlong.github.io/blog/2013/08/29/devtoolsecrets/ 1.Date new Date( ...
- MySQL通过Binlog恢复删除的表
查看log-bin是否开启:mysql> show variables like '%log%bin%';+---------------------------------+-------+| ...
- [Environment Build] 如何实现Visual Studio中的区域语言环境切换
最开始学习C#这门语言的时候,英文能力不够好,安装的中文版本的Visual Studio,现在工作有段时间了,公司又是个外企,慢慢不习惯中文版本的了,于是产生了想切换语言的想法,网上搜索了下,下载了个 ...
- 【css老版本浏览器兼容利器】ie-css3.htc
做前端的同学都应该听说或者用过,是一段脚本,可以让ie实现css3里的圆角和阴影效果. css带来的便利是很容易感受的到的,但恶心的是它在ie下的不兼容,所以某位牛人现身写了个ie-css3.htc, ...
- 语音识别之梅尔频谱倒数MFCC(Mel Frequency Cepstrum Coefficient)
语音识别之梅尔频谱倒数MFCC(Mel Frequency Cepstrum Coefficient) 原理 梅尔频率倒谱系数:一定程度上模拟了人耳对语音的处理特点 预加重:在语音信号中,高频部分的能 ...
- Encog
http://www.heatonresearch.com/encog/ https://www.mql5.com/zh/articles/252
- C#错误:The Controls collection cannot be modified
用 <%# %>这种写法是写在数据绑定控件中的,之所以用 <%= %>会出现The Controls collection cannot be modified because ...
- 如何解决Mac与iPhone之间handoff连接问题
首先账户以及设备handoff开关问题不再赘述.主要是昨天发现的一个小技巧 当确认所有设备的iCloud账号统一.蓝牙打开.处在同一WiFi下的前提下,我的iPhone和Mac仍然handoff连接有 ...