C#中的字符串处理

是由多个单个字符组成的。字符串的关键字是string,而我们单个字符char型。也就是一个字符串可以分为很多个char的字符。注意 同时,我们在开发项目或者学习时。更多的操作不是数字也不是图片。而是我们要学习的字符串。

一、常用字符串有哪一些?

1. 获得字符串的长度,也就是字符串由几个字符组成的。string.Length

using System;

public class Test
{
public static void Main()
{
string str = "323dsdsda32sds";
//str字符串长度为:14
//表示字符串由14个字符组成
Console.WriteLine("str字符串长度为:"+str.Length);
Console.WriteLine("str字符串第一个字符是:"+str[0]);
Console.WriteLine("str字符串最后一个字符是:"+str[(str.Length-1)]); //一个字符串可以使用下标来访问那么就可以使用循环
foreach( char i in str){
Console.WriteLine(i);
} for(int i = 0; i < str.Length;i++){
Console.WriteLine(str[i]);
}
}
}

2. 查找字符串的字符

using System;

public class Test
{
public static void Main()
{
string str = "323dsdsd@a32sds"; //IndexOf进行查找字符时,如果没有找到则返回-1
//如果有找到,则返回查找字符所在的位置。
if(str.indexOf("@") != -1){
Console.WriteLine("查找字符所在位置是:"+str.indexOf("@"));
}else{
Console.WriteLine("查找字符不存在");
}
}
}
IndexOf和LastIndexOf一起使用
using System;

public class Test
{
public static void Main()
{
string str = "323dsdsd@a32sds"; int firstIndex = str.IndexOf("@");
int lastIndex = str.LastIndexOf("@"); if(firstIndex != -1){
if (firstIndex == lastIndex){
Console.WriteLine("只出现了一次");
}else{
Console.WriteLine("不只一次出现");
}
}else{
Console.WriteLine("没有找到查找字符");
}
}
}

**注意:**IndexOf()表示查找指定字符,如果有就直接返回字符串下标,不会往后查找。而LastIndexOf()则返回指定字符最一次出现的位置。

3.字符串中替换
using System;

public class Test
{
public static void Main()
{
//第一个@符号替换成_,第一个&替换成-
string str = "32@3dsdsd@a32&sds";
if(str.IndexOf("@") != -1){
str.Replace("@", "_");
}
if(str.IndexOf("&") != -1){
str.Replace("&","-");
}
Console.WriteLine(str);
}
}
4.字符串截取

a、Substring(指定位置);//从字符串中的指定位置开始截取到字符串结束

using System;

public class Test
{
public static void Main()
{
//从字符串中截想要的内容
//32@不是我想要的
string str = "32@3dsdsd@a32&sds"; string tempStr;
tempStr = str.SubString(2);
Console.WriteLine(tempStr);
}
}
5.字符串分割和拼接|Split and Join
using System;

public class Test
{
public static void Main()
{
//短语分为每个单词的字符串数组
string str = "The quick brown fox jumps over the lazy dog.";
//使用Split会返回一个数组
tmpData = str.Split(" "); foreach(string item in tmpData){
Console.WriteLine(item);
} //把数组按一定规则来拼接成一个字符串
string tmpStr = String.Join(" Hello ", tmpData);
Console.WriteLine(tmpStr);
//输出结果:The Hello quick Hello brown Hello fox Hello jumps Hello over Hello the Hello lazy Hello dog. }
}

关于字符串的分割和拼接。Join是把一个数组按一定规则拼接一个字符串,而Split则是按一定规则把字符串分割成一个数组。

C#中的字符串处理的更多相关文章

  1. Python3中的字符串函数学习总结

    这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...

  2. 使用strings查看二进制文件中的字符串

    使用strings查看二进制文件中的字符串 今天介绍的这个小工具叫做strings,它实现功能很简单,就是找出文件内容中的可打印字符串.所谓可打印字符串的涵义是,它的组成部分都是可打印字符,并且以nu ...

  3. 在 case 语句中使用字符串-转

    http://www.cnblogs.com/del/archive/2008/07/08/1237856.html 非常遗憾 Delphi 的 case 语句不支持字符串, 但我觉得这也可能是基于效 ...

  4. 使用Microsoft Roslyn提取C#和VB.NET源代码中的字符串常量

    Microsoft Roslyn是微软.NET“编译器即服务(Compiler as a Service)”的主要产品,它提供了开放的编译器API,并为源代码产生.分析和重构提供了新一代的语言对象模型 ...

  5. SQL Server中截取字符串常用函数

    SQL Server 中截取字符串常用的函数: .LEFT ( character_expression , integer_expression ) 函数说明:LEFT ( '源字符串' , '要截 ...

  6. 在文件夹中 的指定类型文件中 查找字符串(CodeBlocks+GCC编译,控制台程序,仅能在Windows上运行)

    说明: 程序使用 io.h 中的 _findfirst 和 _findnext 函数遍历文件夹,故而程序只能在 Windows 下使用. 程序遍历当前文件夹,对其中的文件夹执行递归遍历.同时检查遍历到 ...

  7. 7.Java中的字符串

    1.String的特性 特性一:不可变性 String s=new String("yangyun") s=s.toUpperCase(); 这里的s,s占用的空间是不一样的(地址 ...

  8. C# 利用占位符替换word中的字符串和添加图片

    利用占位符替换word中的字符串和添加图片   ///<summary>         /// 替换word模板文件内容,包括表格中内容         /// 调用如下:WordStr ...

  9. 使用C#程序处理PowerPoint文件中的字符串

    最近, 有同事偶然发现Microsoft  Office PowerPoint可以被看作是一个压缩包,然后通过WinRAR解压出来一组XML文件.解压出来的文件包括: 一个索引文件名称为:[Conte ...

  10. Java OOP中的字符串篇

    字符串的三大特征: String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全) 一.定义 查看 API 会发现,String.St ...

随机推荐

  1. 提取.bank音频包。 Extract .bank audio files

    转载请注明出处! 首先我们需要提取的文件是 .bank 的音频文件包,里面包含很条音频. 这是我们会用到工具 step1: 运行  quickbms.exe, 它会自动打开选择文件窗口,我们直接选择下 ...

  2. Postgresql存放数组形式的数据

    Postgres 数据库允许把字段定义为可变长度的数组.数据类型既可以是内置类型,也可以是用户自定义的类型或枚举类型. 例如: 创建表 create table demo(name text,subj ...

  3. 关于js拖放功能的实现

    这是具体的拖放代码的HTML,里面依赖两个组件:EventUtil.js是兼容浏览器添加方法的库,EventTarget.js是一个发布-订阅者模式的对象库. EventUtil.js: var Ev ...

  4. Thead基础及两种创建方式

    今天本人给大家讲解一下多线程,如有不对的或者讲的不好的可以多多提出,我会进行相应的更改,先提前感谢提出意见的各位了!!! 说说多线程本人自己对它理解的定义:因计算机的CPU支持能够在同一时间执行多于一 ...

  5. 小程序的数据存储,与Django等服务发送请求

    目录 官方文档 快速归纳 存取改删 1.wx存储数据到本地以及本地获取数 1.1 wx.setStorageSync(string key, any data) 存(同步) 1.2 wx.setSto ...

  6. 打开ElasticSearch、kibana、logstash的正确方式

    作者:玩世不恭的Coder时间:2020-03-08说明:原创不易,本文为原创文章,未经允许不可转载,转载前请联系作者 打开ElasticSearch.kibana.logstash的正确方式 前言一 ...

  7. 部署nginx后无法访问数据库,查看www-error.log日志报错Class 'mysqli' not found in /usr/local/nginx/html/mysql.php on line 2

    检查你的php-mysql包是否安装 [root@localhost nginx]# rpm -qa php-mysql 没有任何输出则没有安装,接下来用yum安装php-mysql yum -y i ...

  8. js 拖拽实现面向对象

    1.js 支持面向对象编程,但只是基于面向对象,不使用类或者接口.2.演变 工厂模式------->构造函数模式---------->原型模式 工厂模式的缺点: ①函数内部new ,不太符 ...

  9. Python深度学习 deep learning with Python

    内容简介 本书由Keras之父.现任Google人工智能研究员的弗朗索瓦•肖莱(François Chollet)执笔,详尽介绍了用Python和Keras进行深度学习的探索实践,涉及计算机视觉.自然 ...

  10. el-dialog对话弹框中根据后台数据无限制添加el-select标签,并进行展示,搜索,删除

    前几天遇到一个题,el-dialog对话弹框中根据后台数据无限制添加el-select标签,并进行展示,搜索,删除,在这上面用到了递归算法,废话不多说,直接上代码 <template> & ...