有没有办法根据任何标识符从字符串中删除子字符串?
例如,我有:
string codeID = "347439>Dome";
我希望只有>
结果应如下所示:
string newCodeId = "347439"
有可能吗?
答案 0 :(得分:4)
这可能是另一种可能性:
string codeID = "347439>Dome";
string newCodeId = codeID.Split('>')[0];
Console.WriteLine(newCodeId);
它使用返回string[]
的{{3}}方法。为了获得string
的左侧部分,我获取了数组中的第一个元素。字符串的其余部分(在这种情况下)位于1
。
如果字符串中没有>
分隔符。它将仅返回位置[0]
答案 1 :(得分:3)
您可以使用Split()
方法:
string codeID = "347439>Dome";
string result = codeID.Split('>')[0];
答案 2 :(得分:0)
这应该取代您的'>'
之后的所有内容var newCodeId = Regex.Replace(codeID , "[>].*", string.Empty, RegexOptions.IgnoreCase)
答案 3 :(得分:0)
我同意Fubo的回答,但你也可以使用string.split()函数拆分字符串。并且可以取第一个索引值。
string codeID = "347439>Dome";
string result = codeID.Split('>')[0];
答案 4 :(得分:0)
您也可以使用System.Linq:
string result = codeID.Split('>').First();
答案 5 :(得分:0)
方法:SubString()
string codeID = "347439>Dome";
char splitChar = '>';
if (codeID.Contains(splitChar))
{
int charIndex = codeID.IndexOf(splitChar);
string subString = codeID.Substring(0,charIndex);
}