• c#用正则表达式获得指定开始和结束字符串中间的一段文本


    /// <summary>
    /// 获得字符串中开始和结束字符串中间得值
    /// </summary>
    /// <param name="str">字符串</param>
    /// <param name="s">开始</param>
    /// <param name="e">结束</param>
    /// <returns></returns>
    public static string GetValue(string str, string s, string e)
    {
    Regex rg
    = new Regex("(?<=(" + s + "))[.\\s\\S]*?(?=(" + e + "))", RegexOptions.Multiline | RegexOptions.Singleline);
    return rg.Match(str).Value;
    }
    /// <summary>
    /// 截取字符串过多+……
    /// </summary>
    /// <param name="inputString">字符串</param>
    /// <param name="len">长度</param>
    /// <returns>string</returns>
    public static string CutString(string inputString, int len)
    {
    ASCIIEncoding ascii
    = new ASCIIEncoding();
    int tempLen = 0;
    string tempString = "";
    byte[] s = ascii.GetBytes(inputString);
    for (int i = 0; i < s.Length; i++)
    {
    if ((int)s[i] == 63)
    {
    tempLen
    += 2;
    }
    else
    {
    tempLen
    += 1;
    }

    try
    {
    tempString
    += inputString.Substring(i, 1);
    }
    catch
    {
    break;
    }

    if (tempLen > len)
    break;
    }
    //如果截过则加上半个省略号
    byte[] mybyte = System.Text.Encoding.Default.GetBytes(inputString);
    if (mybyte.Length > len)
    tempString
    += "";

    return tempString;
    }
    string get字符串="01-蓝";
    string get后 = get字符串.Substring(0, get字符串.IndexOf("-"));
    这样获取的数据是:蓝
    string get后 = get字符串.Substring(get字符串.IndexOf("-"),get字符串.Length - get字符串.IndexOf("-"));


    呵呵记录下

  • 相关阅读:
    基数排序学习
    桶排序学习
    计数排序-不基于比较O(n)
    基尼系数
    拉普拉斯进行特征选择
    int ,long long等范围
    Codeforces780C
    51 Nod 1119
    字典树入门
    POJ 2531 暴力深搜
  • 原文地址:https://www.cnblogs.com/ret00100/p/1629603.html
Copyright © 2020-2023  润新知