我的控制台应用程序中有3个不同的字符串值:
学生A(AA.1)
学生(1)B(AA.2)
学生B
想从backet获得价值:
AA.1,AA.2
感谢。我使用了分裂,但是因为学生B 没有任何括号会遇到错误而学生(1)B(AA.2)有2个括号。
当前代码
char[] targetExpression = new char[] { '(', ')' };
string title = "Student A (AA.1)";
Console.WriteLine(title.Split(targetExpression)[1]);
答案 0 :(得分:1)
寻找这样的东西?
/.*\(([^)]*)\)$/
答案 1 :(得分:0)
在字符中获取字符串的函数
string GetStirngWithiin(string SourceString, char startChar, char endChar,int StartFrom=0)
{
SourceString = SourceString.Substring(StartFrom);
int startFrom=SourceString.IndexOf(startChar);
int EndAt=SourceString.IndexOf(endChar);
if ((startFrom > -1) && (EndAt >-1))
{
int SubStrLength = EndAt - startFrom - 1;
if (SubStrLength > 0)
{
string Result = SourceString.Substring(startFrom + 1, SubStrLength);
return Result;
}
}
return "";
}
您可以将函数调用用作
string str1 = GetStirngWithiin("Student A (AA.1)",'(',')');
string str2 = GetStirngWithiin("Student(1) B (AA.2))", '(', ')',10);
与学生B一起使用将返回一个空白字符串。