C# 常见的字符串操作
例1:
遍历字符串中的每一个字符:
string src = "aa-b - c-a - d-e- d-e- a- a-b-cc";
foreach(char c in src)
{
string s1 = c + "";
Console.WriteLine(s1);
}
例2:
去掉字符串中多余的空格(如果有1个空格或多个空格相连都只保留一个空格)
string src = " aa-b - c-a - d-e- d-e- a- a-b-cc";
src = new System.Text.RegularExpressions.Regex("[\\s]+").Replace(src, " ");
Console.WriteLine(src);
Console.WriteLine(src.Length);
例3:
去掉字符串首尾的空格字符(无论几个)
string src = " aa-b - c-a - d-e- d-e- a- a-b-cc"; src = src.Trim(); Console.WriteLine(src); Console.WriteLine(src.Length);
Trim可接受char类型的参数,来去除首尾的其他特殊字符。
例4:
字符串的分割
string src = " aa-b - c-a - d-e- d-e- a- a-b-cc";
]{' '});
foreach(string s in sarr)
{
Console.WriteLine(s);
}
分割规则:
[1]分隔符自身不计算在分割的子字符串中
[2]字符串中已经读取到分隔符,如果下一个还是分隔符,那么将截取出一个 ""
[3]字符串的开始前当做有一个分隔符,结尾亦然
例5:
字符串的截取
string src = " aa-b - c-a - d-e- d-e- a- a-b-cc"; src = src.Substring(,); Console.WriteLine(src);
Substring的第一个参数是截取的开始位置坐标(第一个字符前为0,第二个参数为所要截取的字符串的长度,第二个参数可不写,则一直截取到字符串末尾)
例6:
获取字符串中第n次出现目标字符串的目标字符串的位置
string src = " aa-b - c-a - d-e- d-e- a- a-b-cc";
;
;
; i < time; i++)
{
) index++;
index = src.IndexOf("a", index);
}
Console.WriteLine(index);
上例中可以获得原始字符串第四次出现a时a的索引。
例7:
插入、删除、替换
string src = " aa-b - c-a - d-e- d-e- a- a-b-cc";
,"insert");
Console.WriteLine(insert_src);
,);
Console.WriteLine(remove_src);
string replace_a_2_z = src.Replace('a','z');
Console.WriteLine(replace_a_2_z);
Remove用法类似Substring,第二个参数可省略,则一直从当前坐标删除到结尾
打印结果
insert aa-b - c-a - d-e- d-e- a- a-b-cc
- c-a - d-e- d-e- a- a-b-cc
zz-b - c-z - d-e- d-e- z- z-b-cc
例8:
构造字符串
double height = 178.65;
string mystr1 = string.Format("my height is {0:0.0}", height);
Console.WriteLine("mystr1: " + mystr1);
string sp = ",";
"};
string mystr2 = string.Join(sp, arr);
Console.WriteLine("mystr2: " + mystr2);
StringBuilder sb = new StringBuilder();
foreach(string s in arr)
{
sb.Append(s);
}
string mystr3 = sb.ToString();
Console.WriteLine("mystr3: " + mystr3);
[1]mystr1 利用Format构造,可以使用占位符和时间格式等。
[2]mystr2 将一个字符串数组合并成一个字符串,并且插入了连接符(反之可用作分隔符)
[3]mystr3 使用StringBuilder来构造一个频繁需要追加操作的字符串,可以提升构造效率
打印结果:
mystr1: my height is 178.7 mystr2: ,, mystr3:
C# 常见的字符串操作的更多相关文章
- JavaScript中常见的字符串操作函数及用法
JavaScript中常见的字符串操作函数及用法 最近几次参加前端实习生招聘的笔试,发现很多笔试题都会考到字符串的处理,比方说去哪儿网笔试题.淘宝的笔试题等.如果你经常参加笔试或者也是一个过来人,相信 ...
- Bash 中常见的字符串操作
获取字符串长度 ${#string} MyString=abcABC123ABCabc 注意这会自动去掉字符串结尾处的空格,如果在字符串中包含空格(开头.中间或结尾),就需要使用引号把字符串包裹起来: ...
- ios NSString常见的字符串操作 分割 查找
1.NSString *str = [[NSString alloc]init]; //简单粗暴,基本用不到 2.NSString *str = [[NSString alloc]initWi ...
- 深圳尚学堂:JavaScript中常见的字符串操作
快到春节放假了,春节后又是一大波的找工作热潮,在前端实招聘笔试时,必不可免额会考到关于JavaScript中字符串的处理问题.考的不是你会不会,而是你能不能在不借用XX手册或者XX指南再或者百度谷歌的 ...
- Pyhhon中一些常见的字符串操作.
可变变量:list, 字典 不可变变量:元祖,字符串 字符串的操作(去掉空格, 切片, 查找, 连接, 分割, 转换首字母大写, 转换字母大小写, 判断是否是数字字母, 成员运算符(in / not ...
- JS常见的字符串操作
1.charAt() 获取字符串指定位置的字符 用法:strObj是字符串对象,index是指定的位置,(位置从0开始数) strObj.charAt(index) 2. indexOf() 方 ...
- Python 常见的字符串操作
1.strip.lstrip和rstrip 描述: 用于移除字符串左右两边.左边.右边指定的字符(默认为空白符,例如:/n, /r, /t, ' ')或字符序列. 语法: str.strip([cha ...
- C# 字符串操作基本过程(Equals、Compare、EndsWith等处理方法)
本文只介绍了比较方法,但是EndsWith,IndexOf等方法均采用相同的过程,先设置CultureInfo(一般情况下调用当前线程的CultureInfo,该语言文化可以通过控制面板设置),然后调 ...
- JS常见操作,日期操作,字符串操作,表单验证等
复制代码 //第一篇博文,希望大家多多支持 /***** BasePage.js 公共的 脚本文件 部分方法需引用jquery库 *****/ //#region 日期操作 //字符串转化为时间. f ...
随机推荐
- UVa 11468 Substring (AC自动机+概率DP)
题意:给出一个字母表以及每个字母出现的概率.再给出一些模板串S.从字母表中每次随机拿出一个字母,一共拿L次组成一个产度为L的串, 问这个串不包含S中任何一个串的概率为多少? 析:先构造一个AC自动机, ...
- 安装MySQL出现1045错误,卸载不干净
安装MySQL出现1045错误 一.运行环境 MySQL mysql-5.1.26-rc-win32 操作系统:Windows 7 X64 二.问题描述 安装MySQL过程中会涉及对root密码的设置 ...
- .net core 第一个mvc项目目录结构简析
创建项目的命令 首先来认识一下创建项目可使用的各种命令,.NETCore 的命令都以 dotnet 打头,这很好理解,输入 dotnet xxx,就是执行环境变量指向的 C:\Program ...
- RDS mysql 与ECS自建mysql做主从备份
由于公司要组建一个数据中心,简而言之就是把各个地方的数据都同步到一个地方,做BI建模和数据分析. 一般来说这种需求是由hadoop来实现的,但由于预算不够..所以,来个low点的办法吧 以下主要是讲r ...
- Note: Clay Codes: Moulding MDS Codes to Yield an MSR Code
Background Erasure Code 纠删码:与纠错码.检错码类似,均为线性分组码,通过编码可以在有限损失的前提下恢复丢失的数据.  假设每个磁盘存储w比特数据,设\(d_0,\cdots ...
- php5.6安装window7安装memcache.dll库所遇到的误区
问题: window7 64位,下载的库 memcache.dll 为64位的,且对应php的版本.但是重启后phpstudy查看phpinfo依然没有memcache: 根源: 发现是下载的 mem ...
- 51nod 1405【DFS】
思路: 对于结点 u 的子节点 v, 如果已经一直到结点 u 的答案ans[u],那么转移到对于结点 v,num[v] 为 v为根的树的结点个数,那么对于结点v的答案相对于结点u的答案来说, ans[ ...
- 【转】C# 使用正则表达式去掉字符串中的数字,或者去掉字符串中的非数字
源地址:http://www.cnblogs.com/94cool/p/4332957.html
- 2017-10-26 NOIP模拟赛
三分咲 #include<iostream> #include<cstdio> #include<ctime> using namespace std; int n ...
- python 变量,输入,输出
目录 2.0 注释 2.1 变量 2.2 变量名命名规范 2.3 常量 2.4 输入 input 2.5 输出 print 2.6 关于开发工具 2.0 注释 python的注释方法 "&q ...