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. jspdf + html2canvas 实现html转pdf (提高分辨率版本)

    刚解决了html中某div块生成pdf的问题,热乎乎的,赶紧记录下 引入的js传送门: https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.0.272/jsp ...

  2. SAP CRM Transaction处理中的权限控制

    当试图打开一个Opportunity时, 系统会进行如下一系列的权限检查: 1. 检查Authorization object CRM_ORD_OP: 此处会检查当前user的partner func ...

  3. 使用nestjs集成grpc具体操作

    两个程序中, 提供grpc服务的称为服务端, 调用grpc服务的为客户端, 以下是grpc服务端和客户端的代码编写     1. 创建两个nestjs项目demo1(端口: 3000)和demo2(端 ...

  4. 看逐浪CMS技术小哥做SVG动画(附使用Bodymovin和Lottie将Adobe After Effects(AE)程式转为 HTML5/Android/iOS原生的动画全过程-即AE转svg\canvas\html5动画)

      名词解解释 adobe After Effects AE:adobe After Effects,adobe公司的专业视频制作软件. Bodymovin插件预览 Bodymovin:是一个AE的插 ...

  5. 机器学习实用案例解析(1) 使用R语言

    简介 统计学一直在研究如何从数据中得到可解释的东西,而机器学习则关注如何将数据变成一些实用的东西.对两者做出如下对比更有助于理解“机器学习”这个术语:机器学习研究的内容是教给计算机一些知识,再让计算机 ...

  6. Python模块三

    collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdict. ...

  7. Flutter Weekly Issue 47

    教程 开辟 Dart 到 Native 的超级通道,饿了么跨平台的最佳实践 当永恒的软键盘问题遇到Flutter 插件 fijkplayer ijkplayer for flutter. ijkpla ...

  8. StormDRPC流程解读

    Storm 的编程模型是一个有向无环图,模型角度决定了 Storm 的 Spout 接收到外部系统的请求,将请求数据分发给下游的 bolt 进行处理后,spout 并不能得到 bolt 的处理结果并将 ...

  9. 【Weiss】【第03章】练习3.25:数组模拟队列

    [练习3.25] 编写实现队列的例程,使用 a.链表 b.数组 Answer: 在这章一开头就已经写了个链表的队列例程了,所以实际上只要做b小题就可以. 数组模拟队列和链表的两点小不同是: ①.数组空 ...

  10. annaconda的安装及使用

    一.安装 1.安装包下载: 方式1:官网:https://www.anaconda.com/distribution/ 方式2:清华镜像源:https://mirrors.tuna.tsinghua. ...