从开头截取字符串到子字符串 c#

4

我有一些困难在截取字符串方面。我有一个Windows窗体应用程序,可以接收传入的数据。到目前为止,我找到的所有示例都使用字符来定位。我需要它搜索整个"*S"而不仅仅是其中一个字符。

我确实找到了获取字符串索引并从该点开始修剪的方法(sting.remove)。我的问题是我需要修剪开头。因此,一个到索引的修剪方法会起作用,但我还没有找到如何做到这一点。

我有许多像下面这样的数据:

"ok \r\n *S 38773 get 3042"

我需要做的是定位`*S`并删除从开头到`*S`之间的所有内容。由于返回结果并不总是相同的,因此我不能使用`replace`或`remove`方法。我无法预测`*S`之前会出现什么,剩余的数据也是动态的。
如果有任何关于如何从开头到 `*S` 剪切的示例将非常好。谢谢。
2个回答

9
s = s.Substring(s.IndexOf("*S"));

3
注意,如果你想让 "*S" 作为结果的一部分而不添加 "+2",可以省略 "+1"。 - Reed Copsey
请按照Reed的建议进行更新,即使它会继续获得赞,但如果它不能解决问题所要求的内容,也需要进行修改。 :p - curtisk

5
string huh = "ok \r\n *S 38773 get 3042";
string trimmed = huh.Substring(huh.IndexOf("*S"));

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接