C# 字符串操作指南:长度、连接、插值、特殊字符和实用方法

小万哥
• 阅读 281

字符串用于存储文本。一个字符串变量包含由双引号括起的字符集合

示例:

// 创建一个string类型的变量并赋予一个值
string greeting = "Hello";

如果需要,一个字符串变量可以包含多个单词:

示例:

string greeting2 = "Nice to meet you!";

字符串长度

在 C# 中,字符串实际上是一个对象,其中包含可以在字符串上执行某些操作的属性和方法。例如,可以使用 Length 属性找到字符串的长度:

示例:

string txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
Console.WriteLine("txt字符串的长度是:" + txt.Length);

其他方法

有许多可用的字符串方法,例如 ToUpper()ToLower(),它们分别返回字符串转换为大写或小写的副本:

示例:

string txt = "Hello World";
Console.WriteLine(txt.ToUpper());   // 输出 "HELLO WORLD"
Console.WriteLine(txt.ToLower());   // 输出 "hello world"

C# 字符串连接

字符串连接 + 运算符可用于在字符串之间进行连接。这被称为串联:

示例:

string firstName = "John ";
string lastName = "Doe";
string name = firstName + lastName;
Console.WriteLine(name);

请注意,我们在 "John" 之后添加了一个空格,以在打印时在 firstNamelastName 之间创建一个空格。

您还可以使用 string.Concat() 方法来连接两个字符串:

示例:

string firstName = "John ";
string lastName = "Doe";
string name = string.Concat(firstName, lastName);
Console.WriteLine(name);

添加数字和字符串

警告!

C# 使用 + 运算符同时进行加法和连接。

记住:数字相加,字符串连接。

如果您将两个数字相加,结果将是一个数字:

示例:

int x = 10;
int y = 20;
int z = x + y;  // z 将是 30(整数/数字)

如果您将两个字符串相加,结果将是字符串连接:

示例:

string x = "10";
string y = "20";
string z = x + y;  // z 将是 "1020"(一个字符串)

C# 字符串插值

字符串插值是字符串连接的另一种选择,它将变量的值替换到字符串中的占位符中。请注意,与连接不同,您无需担心空格:

示例:

string firstName = "John";
string lastName = "Doe";
string name = $"My full name is: {firstName} {lastName}";
Console.WriteLine(name);

还请注意,在使用字符串插值方法时,必须使用美元符号($)。

字符串插值是在 C# 版本 6 中引入的。

C# 访问字符串

访问字符串的字符可以通过在方括号[]内引用其索引号来实现。

示例:

string myString = "Hello";
Console.WriteLine(myString[0]);  // 输出 "H"

注意:字符串索引从0开始:[0]是第一个字符,[1]是第二个字符,依此类推。

示例:

string myString = "Hello";
Console.WriteLine(myString[1]);  // 输出 "e"

您还可以使用 IndexOf() 方法找到字符串中特定字符的索引位置:

示例:

string myString = "Hello";
Console.WriteLine(myString.IndexOf("e"));  // 输出 "1"

另一个有用的方法是 Substring(),它从字符串中提取字符,从指定的字符位置/索引开始,并返回一个新的字符串。此方法通常与 IndexOf() 一起使用以获取特定字符的位置:

示例:

// 全名
string name = "John Doe";

// 字母D的位置
int charPos = name.IndexOf("D");

// 获取姓氏
string lastName = name.Substring(charPos);

// 打印结果
Console.WriteLine(lastName);

C# 特殊字符

由于字符串必须在引号内编写,C#将误解此字符串并生成错误:

string txt = "We are the so-called "Vikings" from the north.";

避免此问题的解决方案是使用反斜杠转义字符。

反斜杠(\)转义字符将特殊字符转换为字符串字符:

转义字符 结果 描述
' ' 单引号
" " 双引号
\ \ 反斜杠

序列 " 在字符串中插入双引号:

示例:

string txt = "We are the so-called \"Vikings\" from the north.";

序列 ' 在字符串中插入单引号:

示例:

string txt = "It\'s alright.";

序列 \ 在字符串中插入单个反斜杠:

示例:

string txt = "The character \\ is called backslash.";

C#中的其他有用的转义字符包括:

代码 结果 尝试
\n 换行
\t 制表符
\b 退格
```

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

点赞
收藏
评论区
推荐文章
九路 九路
4年前
Go语言字符串和数值转换
一.字符串概述字符串是一段不可变的字符序列.内容是任意内容,可以是一段文字也可以是一串数字,但是字符串类型数字不能进行数学运算,必须转换成整型或浮点型字符串类型关键字:string创建字符串类型变量govarsstring"hello,world"s1:"hello,world"字符串类型的值使用双引号""扩上
Peter20 Peter20
3年前
mysql中like用法
like的通配符有两种%(百分号):代表零个、一个或者多个字符。\(下划线):代表一个数字或者字符。1\.name以"李"开头wherenamelike'李%'2\.name中包含"云",“云”可以在任何位置wherenamelike'%云%'3\.第二个和第三个字符是0的值wheresalarylike'\00%'4\
Stella981 Stella981
3年前
HIVE string与varchar调研文档
一、简要介绍:Hive有2种类型用于存储变长文本。1.Hive0.12.0版本引入了VARCHAR类型,VARCHAR类型使用长度指示器(1到65355)创建,长度指示器定义了在字符串中允许的最大字符数量。如果一个字符串值转换为或者被赋予一个varchar值,其长度超过了长度指示器则该字符串值会自动被截断。2.STRING存储变长的文本,对长度
Wesley13 Wesley13
3年前
mysql中时间比较的实现
MySql中时间比较的实现unix\_timestamp()unix\_timestamp函数可以接受一个参数,也可以不使用参数。它的返回值是一个无符号的整数。不使用参数,它返回自1970年1月1日0时0分0秒到现在所经过的秒数,如果使用参数,参数的类型为时间类型或者时间类型的字符串表示,则是从1970010100:00:0
Stella981 Stella981
3年前
JavaScript常用函数
1\.字符串长度截取functioncutstr(str,len){vartemp,icount0,patrn/^\x00\xff/,strre"";for(vari
Stella981 Stella981
3年前
Python字符串运算符
下表实例变量a值为字符串"Hello",b变量值为"Python":操作符描述实例字符串连接\ab'HelloPython'\重复输出字符串\a\2'HelloHello'\\通过索引获取字符串中字符\a\1\'e'\:\截取字符串中的一
小万哥 小万哥
4个月前
Kotlin 字符串教程:深入理解与使用技巧
Kotlin中的字符串用于存储文本,定义时使用双引号包围字符序列,如vargreeting"Hello"。Kotlin能自动推断变量类型,但在未初始化时需显式指定类型,如varname:String。可通过索引访问字符串元素,如txt0获取首字符。字符串作为对象,拥有属性和方法,如length获取长度,toUpperCase()转大写。可使用compareTo()比较字符串,indexOf()查找子串位置。字符串中嵌入单引号表示文本内的引号,如"It&39;salright"。使用或plus()
小万哥 小万哥
1年前
Python 中的字符串基础与应用
在Python中,字符串可以用单引号或双引号括起来。'hello'与"hello"是相同的。您可以使用print()函数显示字符串文字:示例:Pythonprint("Hello")print('Hello')将字符串分配给变量是通过变量名后跟等号和字符串
小万哥 小万哥
10个月前
深入理解 Java 变量类型、声明及应用
Java变量变量是用于存储数据值的容器。在Java中,有不同类型的变量,例如:String存储文本,例如"你好"。字符串值用双引号引起来。int存储整数(全数字),没有小数,例如123或123。float存储浮点数,带有小数,例如19.99或19.99。c
小万哥 小万哥
8个月前
C++ 字符串完全指南:学习基础知识到掌握高级应用技巧
C字符串字符串用于存储文本。一个字符串变量包含由双引号括起来的一组字符:示例创建一个string类型的变量并为其赋值:cppstringgreeting"Hello";C字符串连接字符串连接可以使用运算符来实现,生成一个新的字符串。示例:cpps