c# string 替换最后一个指定字符为其他字符
时间: 2023-06-14 08:05:41 浏览: 245
可以使用 `LastIndexOf` 方法来获取最后一个指定字符的位置,然后使用 `Substring` 方法来获取该字符之前和之后的子字符串,最后使用 `+` 操作符将它们拼接起来。
以下是一个示例代码:
```csharp
string originalString = "Hello world!";
char targetChar = 'o';
char replacementChar = '*';
int lastIndexOfTargetChar = originalString.LastIndexOf(targetChar);
if (lastIndexOfTargetChar >= 0)
{
string newString = originalString.Substring(0, lastIndexOfTargetChar) + replacementChar + originalString.Substring(lastIndexOfTargetChar + 1);
Console.WriteLine(newString); // 输出: Hello w*rld!
}
else
{
Console.WriteLine(originalString); // 输出: Hello world!
}
```
相关问题
c# string 替换最后一个指定字符串为其他字符串
可以使用 `LastIndexOf` 方法来获取字符串中最后一个指定子字符串的位置,然后使用 `Substring` 方法截取字符串前面的部分和后面的部分,最后将替换字符串插入到这两部分之间即可。
以下是示例代码:
```csharp
string source = "hello world, hello again";
string oldString = "hello";
string newString = "hi";
int lastIndex = source.LastIndexOf(oldString);
if (lastIndex != -1)
{
string prefix = source.Substring(0, lastIndex);
string suffix = source.Substring(lastIndex + oldString.Length);
string result = prefix + newString + suffix;
Console.WriteLine(result);
}
```
输出结果为:
```
hello world, hi again
```
c# string 替换最后一个字符为其他字符
可以使用 `Substring()` 和 `Remove()` 方法来实现替换最后一个字符。具体步骤如下:
1. 首先判断字符串是否为空或者长度是否为0,如果是,则不进行操作,直接返回原字符串。
2. 使用 `Substring()` 方法获取字符串中除最后一个字符外的所有字符。
3. 使用 `Remove()` 方法删除字符串中最后一个字符。
4. 将要替换的字符添加到字符串的末尾。
5. 将第2步和第4步得到的字符串进行拼接并返回。
以下是示例代码:
```csharp
public static string ReplaceLastCharacter(string source, char newChar)
{
if (string.IsNullOrEmpty(source))
{
return source;
}
string substring = source.Substring(0, source.Length - 1);
string replacedString = substring.Remove(substring.Length - 1) + newChar;
return replacedString;
}
```
可以调用这个方法来替换字符串的最后一个字符。例如:
```csharp
string originalString = "abcde";
char newChar = 'f';
string replacedString = ReplaceLastCharacter(originalString, newChar);
Console.WriteLine(replacedString); // 输出 "abcdf"
```
阅读全文