C# 字符串截取

本文详细介绍了C#中字符串的基本操作方法,包括如何使用Substring进行截取、如何查找子字符串的位置以及如何获取字符串长度等。并通过实例展示了这些方法的具体应用。
c#中字符串截取使用的方法

String substring(int beginIndex)
String substring(int beginIndex, int endIndex)
String.Substring (Int32) //子字符串从指定的字符位置开始。
String.Substring (Int32, Int32) //子字符串从指定的字符位置开始且具有指定的长度。

举例如下:

string s = "Hello C# World!";
//s1为从s中截取的位置为3的字符以后的字符子串,3表示子字符串的起始字符位置
string s1=s.Substring(3);
//s2为从s中截取的位置为6的字符开始长度为2的字符串,6表示子字符的起始字符位置,2表示子字符长度
string s2 = s.Substring(6, 2);

结果如下:
lo C# World!
C#


int indexOf(String str) //返回第一次出现的指定子字符串在此字符串中的索引。
int indexOf(String str, int fromIndex) //从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引。
int lastIndexOf(String str) //返回在此字符串中最右边出现的指定子字符串的索引。
int lastIndexOf(String str, int fromIndex) //从指定的索引处开始向后搜索,返回在此字符串中最后一次出现的指定子字符串的索引。
int length() //返回此字符串的长度。
boolean startsWith(String prefix) //测试此字符串是否以指定的前缀开始。
boolean startsWith(String prefix, int toffset) //测试此字符串是否以指定前缀开始,该前缀以指定索引开始。

例如:
string  str= "C:\\Documents and Settings\\Administrator\\桌面\\new1.jpg" 
str.Substring(0,str.LastIndexOf("\\")+1)+"new"+str.Substring(str.LastIndexOf("\\")+1,str.LastIndexOf(".")-str.LastIndexOf("\\")-1)+str.Substring(str.LastIndexOf("."),str.Length-str.LastIndexOf(".")
str.LastIndexOf("\\") //得到最后一个“\\”的索引值
str.Substring(0,str.LastIndexOf("\\")+1) //得到 C:\\Documents and Settings\\Administrator\\桌面\\
str.Substring(str.LastIndexOf("\\")+1,str.LastIndexOf(".")-str.LastIndexOf("\\")-1) //得到 new1
str.Substring(str.LastIndexOf("."),str.Length-str.LastIndexOf(".") //得到 .jpg
### C# 字符串截取方法 在 C# 中,字符串截取可以通过多种方式实现。以下是几种常用的方法及其对应的代码示例。 #### 使用 `Substring` 方法 `Substring` 是最常见的一种字符串截取方法,它允许开发者通过指定起始位置以及可选的长度参数来获取子字符串[^2]。 ```csharp string originalString = "HelloWorld"; // 从索引0开始,截取5个字符 string subString = originalString.Substring(0, 5); Console.WriteLine(subString); // 输出: Hello ``` 如果只需要指定起始位置而不需要指定长度,则会返回从该位置到字符串末尾的部分: ```csharp string subStringToEnd = originalString.Substring(5); Console.WriteLine(subStringToEnd); // 输出: World ``` #### 使用 `Remove` 方法 另一种方法是利用 `Remove` 函数移除不想要的部分,从而间接达到截取的效果[^4]。 ```csharp string str = "GTAZB_JiangjBen_123"; // 移除前8个字符 string result = str.Remove(0, 8); Console.WriteLine(result); // 输出: Ben_123 ``` #### 结合 `Split` 和数组访问 当需要基于分隔符进行切割时,可以考虑使用 `Split` 方法并结合数组下标定位目标片段。 ```csharp string inputStr = "FirstName.LastName@Domain.com"; // 按'.'拆分字符串 string[] parts = inputStr.Split('.'); if (parts.Length >= 2){ Console.WriteLine(parts[1]); // 输出 LastName } ``` 以上展示了三种主要的技术手段用于解决不同场景下的需求。每种技术都有其适用范围,在实际开发过程中可以根据具体业务逻辑选择最适合的方式完成任务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值