我有一个带括号的字符串,我希望只提取括号内的字符串部分。
例如,从以下字符串:
"abc(def)ghi"
我想得到"def"
,没有括号。
我已经进行了一些搜索,但到目前为止我发现的最接近的是 String.Split():
string s = "3,2,4,5,6";
string[] words = s.Split(',');
但是 String.Split 一次只需要 1 个分隔符。有没有更好的方法来只抓取括号内的字符串?
正则表达式可以在这里提供帮助
string input = "abc(def)ghi";
var def = Regex.Match(input, @"\((.+?)\)").Groups[1].Value;
您可以拆分多个字符:s.Split("()".ToCharArray())
. 不确定这是否适合您,或者正则表达式是否适合。
您可以传入要拆分的字符数组。
像这样:
string s = "abc(def)ghi";
char[] chars = new char[] { '(', ')' };
string[] parts = s.Split(chars);
只是另一种选择。简单,双重分裂
string s = "abc(def)ghi";
string []first = s.Split('(');
string[] second = first[1].Split(')');
Console.WriteLine(second[0]);
Console.ReadLine();