拆分字符串并选择包含两组括号的中间部分
本文关键字:中间部 包含两 字符 字符串 串并 选择 拆分 | 更新日期: 2023-09-27 18:35:02
据我所知,为了选择字符串的一部分,我们使用split
.例如,如果node1.Text
test (delete) if we choose delete
string b1 = node1.Text.Split('(')[0];
那么这意味着我们已经选择了test
,但是如果我想从node1.Text
中选择delete
,我该怎么办?
更新:
另一个问题是,当字符串中有两组括号时,如何瞄准delete
?例如,字符串是test(2) (delete) - if we choose delete
您也可以使用正则表达式,然后删除括号:
resultString = Regex.Match(yourString, @"'((.*?)')").Value.
Replace("(", "").Replace(")", "");
或更好:
Regex.Match(yourString, @"'((.*?)')").Groups[1].Value;
如果要在括号中提取多个字符串:
List<string> matches = new List<string>();
var result = Regex.Matches(yourString, @"'((.*?)')");
foreach(Match x in result)
matches.Add(x.Groups[1].Value.ToString());
如果您的字符串始终是xxx(yyy)zzz
格式,您可以添加)
字符,因此将其拆分并得到第二个项目;
var s = "test (delete) if we choose delete";
string b1 = s.Split(new[] { '(', ')' })[1];
string tmp = node1.Text.Split('(')[1];
string final = tmp.Split(')')[0];
也是可能的。
使用索引[x]
您可以定位拆分原始字符串的字符之前和之后的字符串部分。如果该字符多次出现,则生成的字符串会覆盖更多部分。