【问题标题】:How to get a text between two (same) separators?如何在两个(相同)分隔符之间获取文本?
【发布时间】:2023-03-03 09:07:20
【问题描述】:

我知道如何在两个不同的分隔符之间获取文本,但是,我不知道在两个相同的分隔符之间。

示例:

"12345@@WantedText@@somethingHere"

我只需要提取数字12345 以及@@@@ 之间的数字 所以最终结果是:12345(WantedText)

注意:这是在 C# WinForms 中

【问题讨论】:

  • 分隔符总是@@,开始和结束?
  • var parts = input.Split(new[] {"@@"}, StringSplitOptions.None); var result = $"{parts[0]}({parts[1]});

标签: c# string split substring


【解决方案1】:

您可以为此使用 string.Split()。它不是最高效的方法,但它确实发挥了作用。

"12345@@MWantedText@@somethingHere".Split(new string[] { "@@" }, StringSplitOptions.None); 将返回一个包含三个条目的 string[]

  1. 12345
  2. MWantedText
  3. somethingHere

然后您可以随意使用此信息。

这只是一个例子,当然你必须使用一个真正的字符串和你想要分割的东西。您还可以提供多个拆分。 Source

【讨论】:

    【解决方案2】:

    使用string.Split 将字符串拆分为由"@@" 标记分隔的部分。然后将这些位重新组合成您想要的结果:

         var text = "12345@@WantedText@@somethingHere";
         var parts = text.Split(new []{"@@"}, StringSplitOptions.RemoveEmptyEntries);
         var result = $"{parts[0]}({parts[1]})";
    

    结果是:

        12345(WantedText)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-01-16
      • 2018-06-20
      • 1970-01-01
      • 1970-01-01
      • 2016-01-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多