正則表達式截取字符串两字符间的内容

Posted wzjhoutai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正則表達式截取字符串两字符间的内容相关的知识,希望对你有一定的参考价值。

一、问题

我有个字符串比方a="abcdanmcadedcdeefako"那么我怎么能得到一个数组,当中数组的各项是字母a和c的中间字符。即第一项是"b"第二项"nm"第三项"ded"

二、答案

以下是C#写的,java也能够适用

static void Main(string[] args)
        {
            string a = "abcdanmcadedcdeefako";
                        Regex reg = new Regex("(?i)(?<=a)[^a]*(?

=c)");//commend by danielinbiti MatchCollection mc = reg.Matches(a); foreach (Match m in mc) { Console.WriteLine(m.Value); } }


假设字符串是"a1bcdAnmca1derdcdeefa1koc"

须要匹配a1和c之间。那么正則表達式就是

(?i)(?<=a1)((?

!a1).)*(?=c)

这里主要用到了  预搜索和反向预搜索



以上是关于正則表達式截取字符串两字符间的内容的主要内容,如果未能解决你的问题,请参考以下文章

vim中使用正則表達式

JavaScript正則表達式知识汇总

正則表達式及应用

JavaScript 正則表達式

JavaScript使用正則表達式

JavaScript使用正則表達式