zoukankan      html  css  js  c++  java
  • C#正则表达式操作中使用LINQ

    问题场景

    在博客园闪存内容中提取Tag,Tag要放在中括号之间并且出现在闪存内容的开头。

    比如:[程序员][代码]博客园 - 程序员的网上家园,代码改变世界

    提取出来的Tag应该是:[程序员]、[代码]

    正则表达式

    Regex _regexTag = new Regex(@"^(\[[^\]]+\])+", RegexOptions.Compiled);

    通过LINQ从正则表达式的捕获中提取出Tag

    public IList<string> GetTags(string ingContent)
    {
    return (from Capture c in _regexTag.Match(ingContent).Groups[1].Captures
    select c.Value).ToList();
    }

    注:即使没有捕获到,_regexTag.Match(ingContent).Groups[1].Captures也不会引发异常。

    LINQ使用感言

    LINQ就像代码世界的小天使,给程序员带来了更多的轻松与快乐!

  • 相关阅读:
    day15内置函数
    day14生成器进阶
    day13迭代器、生成器
    day12装饰器进阶
    day11装饰器
    day10函数进阶
    day9函数
    day8文件操作
    正则表达式
    初识递归
  • 原文地址:https://www.cnblogs.com/dudu/p/2314386.html
Copyright © 2011-2022 走看看