• 黄聪: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("-"));

  • 相关阅读:
    NSPredicate的用法、数组去重、比较...
    CocoaPods安装和使用教程
    UITableView学习笔记
    Linux dpkg 命令
    Linux rpm 软件包管理命令
    Linux chmod 文件权限命令
    Linux vi 命令
    分库分表背后那些事儿
    Spring Cloud Feign原理及性能
    linux "No space left on device" 磁盘空间解决办法
  • 原文地址:https://www.cnblogs.com/huangcong/p/1800070.html
Copyright © 2020-2023  润新知