c# - 从文本文件中删除特定字符串的最后一个实例,而不更改该字符串的其他实例

标签 c# regex string text replace

我有一个 C# 程序,其中使用大量 RegEx.Replace 来替换文本文件中的文本。

这是我的问题。

在我的文本文件中,我有一个代码,例如“M6T1”。此代码在文本文件中的多个位置列出。

但是,我只想从文本文件的底部(最后一个实例)删除它。文本文件的底部总会有一个“M6T1”,但它并不总是最后一行。它可能是从底部算起的第 3 行、从底部算起的第 5 行等等。

我只想删除“M6T1”的最后一个实例,因此 RegEx.Replace 在这里不起作用。我不想干扰文本文件中其他位置的其他“M6T1”。

有人可以给我解决这个问题吗?

谢谢

最佳答案

var needle = "M6T1";
var ix = str.LastIndexOf(needle);
str = str.Substring(0, ix) + str.Substring(ix + needle.Length);

关于c# - 从文本文件中删除特定字符串的最后一个实例,而不更改该字符串的其他实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2878133/

相关文章:

c# - 在同一字段上多次自定义验证属性

Java:我有一大串 html,需要提取 href ="..."文本

java - 有效的字符串分割

python - 使用正则表达式提取字符串位置Python

c# - CLR 编译器优化示例

c# - 在 F# 中正确等待返回类型为 Task<T> 的异步 C# 方法

python - 使代码不那么复杂,更具可读性

python - 正则表达式:从文本中提取一些信息

python - 查找字符后的最后一个子字符串

c# - 扩展函数不适用于动态对象