【问题标题】:Remove a section of text from string c#从字符串c#中删除一段文本
【发布时间】:2013-11-12 17:32:54
【问题描述】:

我在富文本编辑器中使用标签来指定数据字段。

例如 [开始] 和 [结束]

如何从包含标签的字符串块中删除 [Start] 和 [End] 之间的一段文本?

有没有比使用 IndexOf 和 Substring 等更简单的方法?

更新: 我正在尝试使用 var output = Regex.Replace("[Start]SomeText[End]", @"(?

但是这种模式并不完全奏效。它需要删除 [Start] 和 [End] 之间的所有内容

【问题讨论】:

  • 我没有找到更简单的方法。
  • 您在寻找哪种更简单的方法
  • 添加到@huMptyduMpty,更容易可能意味着您应该定义一个或多个因素:更快、更少的代码行、可读性、可维护性、可扩展性..
  • 使用较少的代码行和可读性,不了解完整的 c# 语言,我不确定 c# 中是否有一个很好的函数来帮助解决这个问题。

标签: c# regex


【解决方案1】:

考虑使用正则表达式替换 [Start] 和 [End] 之间的文本。以下代码 sn -p 应该会有所帮助...

var output = Regex.Replace("[Start]SomeText[End]", @"(?<=\[Start\]).*(?=\[End\])", "");

【讨论】:

  • 如果您能告诉我问题所在,我很乐意提供帮助。
【解决方案2】:

您可以使用正则表达式,但我想不出比在文件中搜索它更“简单”的方法了。

【讨论】:

    猜你喜欢
    • 2022-01-16
    • 2019-02-18
    • 2020-08-24
    • 2013-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-19
    相关资源
    最近更新 更多