字符串去掉最后一位

在C#中,可以使用多种方法去掉字符串的最后一位:

  1. Substring方法
  • 通过指定起始位置和长度来截取字符串的一部分。

  • 示例代码:

    var str = "DotNet技术匠!!"var result = str.Substring(0, str.Length - 1);
    Console.WriteLine(result); // 输出 "DotNet技术匠!"
    ```

2. **范围运算符** <b class="card40_249__sup_a7f6" data-sup="sup">2</b>:

- C# 9.0 引入的新特性,使用 `..^1` 可以简洁地截取从字符串开始位置到倒数第二个字符。

- 示例代码<b class="card40_249__sup_a7f6" data-sup="sup">1</b>:

```csharp
    var str = "DotNet技术匠!!"var result = str[..^1];
    Console.WriteLine(result); // 输出 "DotNet技术匠!"
    ```

3. **Remove方法** :

- 删除从指定起始索引位置起到结尾的所有字符<b class="card40_249__sup_a7f6" data-sup="sup">2</b>。

- 示例代码<b class="card40_249__sup_a7f6" data-sup="sup">1</b>:

```csharp
    var str = "DotNet技术匠!!"var result = str.Remove(str.Length - 1);
    Console.WriteLine(result); // 输出 "DotNet技术匠!"
    ```

4. **RTrim方法** <b class="card40_249__sup_a7f6" data-sup="sup">3</b>:

- 删除字符串末尾的所有指定字符<b class="card40_249__sup_a7f6" data-sup="sup">2</b>。

- 示例代码<b class="card40_249__sup_a7f6" data-sup="sup">1</b>:

```csharp
    var str = "DotNet技术匠!!"var result = str.RTrim(',');
    Console.WriteLine(result); // 输出 "DotNet技术匠!!"
    ```

5. **TrimEnd方法** <b class="card40_249__sup_a7f6" data-sup="sup">3</b>:

- 删除字符串末尾的所有指定字符<b class="card40_249__sup_a7f6" data-sup="sup">2</b>。

- 示例代码<b class="card40_249__sup_a7f6" data-sup="sup">1</b>:

```csharp
    var str = "DotNet技术匠!!"var result = str.TrimEnd(',');
    Console.WriteLine(result); // 输出 "DotNet技术匠!!"
    ```

### 建议

- **Substring** 和 **范围运算符** 是较为简洁和高效的方法,适用于大多数情况。

- **Remove** 方法适用于需要删除从特定位置开始的所有字符的情况<b class="card40_249__sup_a7f6" data-sup="sup">2</b>。

- **RTrim** 和 **TrimEnd** 方法适用于仅删除字符串末尾的特定字符<b class="card40_249__sup_a7f6" data-sup="sup">3</b>。

根据具体需求和代码风格,可以选择最合适的方法来实现字符串去掉最后一位。
Top