zoukankan      html  css  js  c++  java
  • 正则表达式提取案例1

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Text.RegularExpressions;
    using System.Net;
    using System.IO;

    namespace 贪婪模式练习
    {
        class Program
        {
            static void Main(string[] args)
            {

                #region 贪婪模式

                //string msg = "1111。11。111。111111。";

                ////当使用限定符的时候,如果没有明确指定,则默认按照贪婪模式来匹配
                ////按照能匹配正则表达式的最多的字符串去匹配。
                //Match match = Regex.Match(msg, ".+");
                //if (match.Success)
                //{
                //    Console.WriteLine(match.Value);
                //}
                //Console.ReadKey();

                #endregion

                #region 终止贪婪模式

                // string msg = "1111。11。111。111111。";

                ////在【限定符的后面】加一个?表示终止贪婪模式
                // //zoo?
                // //当终止贪婪模式的时候,默认按照最少的方式来匹配。
                // Match match = Regex.Match(msg, ".+?");
                // if (match.Success)
                // {
                //     Console.WriteLine(match.Value);
                // }
                // Console.ReadKey();

                #endregion

                #region 案例1

                //string msg = "1111。11。111。111111。";
                ////.+  →  1111。11。111。111111
                ////。  → 。
                //Match match = Regex.Match(msg, ".+。");
                //if (match.Success)
                //{
                //    Console.WriteLine(match.Value);
                //}
                //Console.ReadKey();


                #endregion


                #region 案例2

                //string msg = "1111。11。111。111111。";

                ////.+?  →  1111
                ////。   →。
                ////1111。
                //Match match = Regex.Match(msg, ".+?。");
                //if (match.Success)
                //{
                //    Console.WriteLine(match.Value);
                //}
                //Console.ReadKey();


                #endregion

                #region 提取人名


                //string msg = "大家好。我们是S.H.E。我是S。我是H。呜呜。大家好我是杨中科。fffff";

                //MatchCollection matches = Regex.Matches(msg, "我是.+?。");
                //for (int i = 0; i < matches.Count; i++)
                //{
                //    Console.WriteLine(matches[i].Value);
                //    Console.WriteLine("==================================================");
                //}
                //Console.ReadKey();


                #endregion

                #region 下载网页上的图片
                string url = "http://localhost:8080/美女们.htm";
                WebClient webClient = new WebClient();//WebRequest\WebResponse
                webClient.Encoding = Encoding.GetEncoding("utf-8");
                string html = webClient.DownloadString(url);

                //在html这个字符串中提取所有的图片的路径
                //<img alt="" src="hotgirls/00_00.jpg" />
                //<img src="" alt="" title=""/>
                MatchCollection matches = Regex.Matches(html, "<[iI][mM][gG] alt=\"\" src=\"(.+)\" />");
                for (int i = 0; i < matches.Count; i++)
                {
                    if (matches[i].Success)
                    {
                        //Console.WriteLine(matches[i].Value);
                        //Console.WriteLine(matches[i].Groups[1].Value);
                        string imgUrl = Path.Combine("http://localhost:8080/", matches[i].Groups[1].Value);
                        webClient.DownloadFile(imgUrl, @"c:\美女\" + Path.GetFileName(matches[i].Groups[1].Value));
                        //Console.WriteLine(imgUrl);
                    }
                }
                Console.WriteLine("ok");
                Console.ReadKey();
                #endregion


            }
        }
    }

  • 相关阅读:
    如何将数据库中已有表导入到powerDesigner生成pdm文件
    Delphi TcxTreelist 表格左边总是缩进去 ,好像有偏移 解决方法
    HTML、CSS、JS对unicode字符的不同处理
    老生常谈ajax
    浅谈javascript面向对象
    HTML5原生拖放实例分析
    一个小动画,颠覆你的CSS世界观
    布局神器display:table-cell
    javascript 日常总结
    G2 2.0 更灵活、更强大、更完备的可视化引擎!
  • 原文地址:https://www.cnblogs.com/zpc870921/p/2640578.html
Copyright © 2011-2022 走看看