zoukankan      html  css  js  c++  java
  • 电脑整理的时候发现的一些

    正则超级链接

                    string pattenhref = "<a([^>])*>";
                    string pattenhrefend = "</a([^>])*>";
                    Regex rg = new Regex(pattenhref, RegexOptions.Multiline | RegexOptions.Singleline);
                    MatchCollection m = rg.Matches(strtext);
                    for (int i = 0; i < m.Count; i++)
                    {
                        MessageBox.Show(m[i].Result);
                    }
    
    
    
    取反
    
                    string pattenhref = "<a([^>])*>";
                    string pattenhrefend = "</a([^>])*>";
                    Regex rg = new Regex(pattenhref, RegexOptions.Multiline | RegexOptions.Singleline);
                    MatchCollection m = rg.Matches(strtext);
                    for (int i = 0; i < m.Count; i++)
                    {
                        MessageBox.Show(m[i].Result);
                    }
    
    
    
    引用楼主 firendlys 的回复:
    现在,我想要做的是,想做一个匹配,匹配除了 true false 这2个单词之外的任何字符。
    
    
    
    
    VB.NET code
    //如果是单个字符 (?is)(?!true|false). //如果是多个字符(?is)((?!true|false).)+
    
     string pattenhref = "<a([^>])*>";
                    string pattenhrefend = "</a([^>])*>";
                    Regex rg = new Regex(pattenhref, RegexOptions.Multiline | RegexOptions.Singleline);
                    strtext = rg.Replace(strtext, "");
                    MessageBox.Show(strtext);

    做采集用到的正则

    string regexstr = @"<(?!br|p|/p).*?>";   //去除所有标签,只剩img,br,p
    html = Regex.Replace(html, regexstr, string.Empty, RegexOptions.IgnoreCase);
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Net;
    using System.Text.RegularExpressions;
    using System.Collections;
    using System.IO;
    
    namespace kuaifa.Common
    {
        public static class HttpCJ
        {
            public static string GetHTML(string url, string encoding)
            {
                WebClient web = new WebClient();
                byte[] buffer = web.DownloadData(url);
                return Encoding.GetEncoding(encoding).GetString(buffer);
            }
            public static string GetSubValue(string str, string s, string e)
            {
                Regex rg = new Regex("(?<=(" + s + "))[.\s\S]*?(?=(" + e + "))", RegexOptions.Multiline | RegexOptions.Singleline);
                return rg.Match(str).Value;
            }
            public static ArrayList GetMatchesStr(string htmlCode, string strRegex)
            {
                ArrayList al = new ArrayList();
    
                Regex r = new Regex(strRegex, RegexOptions.IgnoreCase | RegexOptions.Multiline);
                MatchCollection m = r.Matches(htmlCode);
    
                for (int i = 0; i < m.Count; i++)
                {
                    bool rep = false;
                    string strNew = m[i].ToString();
    
                    // 过滤重复的URL 
                    foreach (string str in al)
                    {
                        if (strNew == str)
                        {
                            rep = true;
                            break;
                        }
                    }
    
                    if (!rep) al.Add(strNew);
                }
    
                al.Sort();
    
                return al;
            }
    
    
    
    
            public static string GetDataFromUrl(string url)
            {
    
                string str = string.Empty;
    
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    
                //设置Http头;
    
                request.AllowAutoRedirect = true;
    
                request.AllowWriteStreamBuffering = true;
    
                request.Referer = "";
    
                request.Timeout = 10 * 1000;
    
                //request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022)";
    
                HttpWebResponse response = null;
    
                try
                {
    
                    response = (HttpWebResponse)request.GetResponse();
    
                    if (response.StatusCode == HttpStatusCode.OK)
                    {
    
                        //根据http应答头来判别编码
    
                        string Characterset = response.CharacterSet;
    
                        Encoding encode;
    
                        if (Characterset != "")
                        {
    
                            if (Characterset == "ISO-8859-1")
                            {
    
                                Characterset = "gb2312";
    
                            }
    
                            encode = Encoding.GetEncoding(Characterset);
    
                        }
    
                        else
                        {
    
                            encode = Encoding.Default;
    
                        }
    
                        //声明一个内存流来贮存http应答流
    
                        Stream Receivestream = response.GetResponseStream();
    
                        MemoryStream mstream = new MemoryStream();
    
                        byte[] bf = new byte[255];
    
                        int count = Receivestream.Read(bf, 0, 255);
    
                        while (count > 0)
                        {
    
                            mstream.Write(bf, 0, count);
    
                            count = Receivestream.Read(bf, 0, 255);
    
                        }
    
                        Receivestream.Close();
    
                        mstream.Seek(0, SeekOrigin.Begin);
    
                        //从内存流里读取字符串这里涉及到了编码方案
    
                        StreamReader reader = new StreamReader(mstream, encode);
    
                        char[] buf = new char[1024];
    
                        count = reader.Read(buf, 0, 1024);
    
                        while (count > 0)
                        {
    
                            str += new string(buf, 0, 1024);
    
                            count = reader.Read(buf, 0, 1024);
    
    
    
                        }
    
                        reader.Close();
    
                        mstream.Close();
    
    
    
    
    
    
    
                    }
    
    
    
                }
    
                catch (Exception ex)
                {
    
    
    
                    GetDataFromUrl(url);
    
    
    
                }
    
                finally
                {
    
                    if (response != null)
    
                        response.Close();
    
                }
    
    
    
                return str;
    
            }
    
        }
    }

    byte与string与char.txt

    byte[]   ByteArray={120,121,123,128,129,130}; 
    char[]   CharArray=System.Text.Encoding.ASCII.GetChars(ByteArray); 
    
    for(int   i=0;i <CharArray.Length;i++) 
    { 
    //其实此处128后面的编码无法显示 
    Console.WriteLine( "{0}:{1} ",i,CharArray[i]); 
    } 
    
    Console.WriteLine(); 
    
    //此处得到我们订制的ASCII字符串,然后模拟您的测试 
    
    string   s=new   String(CharArray); 
    Console.WriteLine(s); 
    
    byte[]   newByteArray=System.Text.Encoding.ASCII.GetBytes(s); 
    
    
    读:TextBox1.Text=File.ReadAllText("d:/b.txt",Encoding.Default);
    
    写:File.WriteAllText("d:/a.txt", TextBox1.Text, Encoding.Default);
    
     
    
    追加:File.AppendAllText("d:/a.txt", TextBox1.Text, Encoding.Default); 
    
    
    string s = System.Text.Encoding.Default.GetString(ib);
    byte[] b = System.Text.Encoding.Default.GetBytes(s);
    
      MemoryStream buf = new MemoryStream(b);
      Image image = Image.FromStream(buf, true);
      pictureBox_File.Image = image;
    
    
    项目中我用的汉字,String args = new String(data,"GB2312"); 好用!
     
    
    
    
    
         Encoding encoding = Encoding.GetEncoding(Encode);
                    byte[] bytes = encoding.GetBytes(PostStr);
    
                    //string retstr = System.Text.Encoding.UTF8.GetString(bytes);
                    //MessageBox.Show(retstr);
    
    
    public string recvMessage()
    {
      byte[] recvBytes = new byte[Int32.Parse(ss)];
      int bytes=0;
      bytes += s.Receive(recvBytes, recvBytes.Length, 0);
      byte[] gb = Encoding.Convert(utf8, gb2312, recvBytes);
      string sGb = gb2312.GetString(gb);
    }
  • 相关阅读:
    urllib2使用总结
    Scrapy简介
    python3使用多代理访问网站
    ISO9000 质量管理和质量保证系列国际标准
    怎样花两年时间去面试一个人
    Robot Framework 快速入门_中文版
    PMP项目经理认证
    Scrapy安装介绍
    批处理写的俄罗斯方块
    TL9000 电信业质量体系管理标准
  • 原文地址:https://www.cnblogs.com/wangchuang/p/4478716.html
Copyright © 2011-2022 走看看