C# 正则表达式 括号内的东西取出

[[字符串1|字符串2]]这种情况取出字符串1,长度不定,3个字,4个字,都有可能。该怎么取呢?谢谢~... [[字符串1|字符串2]]
这种情况取出字符串1,长度不定,3个字,4个字,都有可能。
该怎么取呢?
谢谢~
展开
 我来答
ljqling
推荐于2016-01-20 · TA获得超过797个赞
知道小有建树答主
回答量:391
采纳率:0%
帮助的人:427万
展开全部
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;//引入命名空间

namespace testRex
{
class Program
{
static void Main(string[] args)
{
string text = "[[字符串1|字符串2]]";
string pattern = "\\[\\[(.*?)\\|(.*?)\\]\\]";//正则,[]|都是保留字符,所以要转义,.net \本身是转义字符,所以要用\\
MatchCollection mc = Regex.Matches(text, pattern);
Console.WriteLine("Number of matches found : {0}", mc.Count);

// Enumerated all the matches.
foreach (Match m in mc)
{
Console.WriteLine("Sentence containing John as 7th word: {0}", m.Groups[1].Value);
}
Console.ReadLine();
}
}
}
最美Lily
2012-05-21 · 超过12用户采纳过TA的回答
知道答主
回答量:47
采纳率:0%
帮助的人:18.7万
展开全部
正则表达式如下:
\[\([[^|]+)|([^\]]+)\]\], 取来来的字符串用$1和$2引用.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我的健康我掌握
2012-05-19 · TA获得超过828个赞
知道小有建树答主
回答量:1757
采纳率:50%
帮助的人:464万
展开全部
\[\[([^\|)+)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式