C#正则表达式斯普利特 - 方括号内的一切 [英] C# Regex Split - everything inside square brackets

查看:130
本文介绍了C#正则表达式斯普利特 - 方括号内的一切的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

目前,我正在试图分裂在C#中的字符串(最新的.NET和Visual Studio 2008),以便检索一切的方括号内并丢弃剩余的文本。

I'm currently trying to split a string in C# (latest .NET and Visual Studio 2008), in order to retrieve everything that's inside square brackets and discard the remaining text.

例如:H1受体拮抗剂[HSA:3269] [PATH:hsa04080(3269)

在这种情况下,我感兴趣的是得到 HSA:3269 PATH:hsa04080(3269)到字符串数组

In this case, I'm interested in getting "HSA:3269" and "PATH:hsa04080(3269)" into an array of strings.

如何才能实现这一目标?

How can this be achieved?

推荐答案

拆分不会帮助你在这里;你需要使用常规的前pressions:

Split won't help you here; you need to use regular expressions:

// 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]);
}

您的息率结果。

这篇关于C#正则表达式斯普利特 - 方括号内的一切的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆