我目前正在尝试在C#(最新的.NET和Visual Studio 2008)中拆分字符串,以便检索方括号内的所有内容并丢弃剩余的文本.
例如:"H1受体拮抗剂[HSA:3269] [路径:hsa04080(3269)]"
在这种情况下,我有兴趣将" HSA:3269 "和" PATH:hsa04080(3269) "放入一个字符串数组中.
怎么能实现这一目标?
Kon*_*lph 72
Split在这里不会帮助你; 你需要使用正则表达式:
// using System.Text.RegularExpressions;
// pattern = any number of arbitrary characters between square brackets.
var pattern = @"\[(.*?)\]";
var query = "H1-receptor antagonist [HSA:3269] [PATH:hsa04080(3269)]";
var matches = Regex.Matches(query, pattern);
foreach (Match m in matches) {
Console.WriteLine(m.Groups[1]);
}
Run Code Online (Sandbox Code Playgroud)
产生你的结果.