C#拆分字符串直到遇到某些文本

时间:2018-06-08 00:59:06

标签: c# string split trim

我正在尝试将字符串拆分,直到找到某个字符。 例如:

string test = "Hello(30)";

我希望结果是:“你好” 另一个例子:

string test = "Test(50)";

结果:“测试”

我该怎么做?感谢。

2 个答案:

答案 0 :(得分:2)

你想使用IndexOf函数,它返回一个字符在字符串中的第一个位置:

string s = test.Substring(0,test.IndexOf("("));

答案 1 :(得分:1)

尼克用子字符串发布了一个直截了当的答案,但是如果你想要一些可以匹配更复杂东西的字符串,那么请看Regex。如果您不熟悉,我建议您研究如何在自己的时间内使用它,但这是您的代码的实现。

您需要在文件顶部输入using System.Text.RegularExpressions;来声明要包含正则表达式。

string test = "Hello(30)";
string match = Regex.Match(test, @"[^(]*").ToString();
//[^(]* == Exclude all after point in search.
//match == "Hello"

正则表达式可能是一团糟,但如果你需要了解更多,那里有很多文档。只需在网上搜索它,你就会找到你想要的东西。

有关我使用的实施,请参阅this stack overflow comment