StringHelper-字符串辅助类

简介:
using System;
using System.Collections.Generic;

using System.Text;
using System.Globalization;
using System.Text.RegularExpressions;

namespace Framework
{
    /// <summary>
    /// 字符串辅助类
    /// </summary>
    public static class StringHelper
    {
        /// <summary>
        /// 截取字符串的后部分
        /// </summary>
        /// <param name="source">原字符串</param>
        /// <param name="value">拆分字符串</param>
        /// <returns>截取后的字符串</returns>
        public static string SubstringAfter(this string source, string value)
        {
            if (string.IsNullOrEmpty(value))
            {
                return source;
            }
            CompareInfo compareInfo = CultureInfo.InvariantCulture.CompareInfo;
            int index = compareInfo.IndexOf(source, value, CompareOptions.Ordinal);
            if (index < 0)
            {
                return string.Empty;
            }
            return source.Substring(index + value.Length);
        }
        /// <summary>
        /// 截取字符串的前部分
        /// </summary>
        /// <param name="source">原字符串</param>
        /// <param name="value">拆分字符串</param>
        /// <returns>截取后的字符串</returns>
        public static string SubstringBefore(this string source, string value)
        {
            if (string.IsNullOrEmpty(value))
            {
                return value;
            }

            CompareInfo compareInfo = CultureInfo.InvariantCulture.CompareInfo;
            int index = compareInfo.IndexOf(source, value, CompareOptions.Ordinal);
            if (index < 0)
            {
                return string.Empty;
            }

            return source.Substring(0, index);
        }


        /// <summary>
        /// 追加字符串,用分隔符分隔,默认分隔符为“,”
        /// </summary>
        /// <param name="sb">StringBulider对象</param>
        /// <param name="append">要追加的字符串</param>
        /// <param name="split">分隔符</param>
        public static void AppendString(this StringBuilder sb, string append, string split = ",")
        {
            if (sb.Length == 0)
            {
                sb.Append(append);
                return;
            } 
            sb.Append(split);
            sb.Append(append);
        }
        /// <summary>
        /// 替换所有HTML标签为空
        /// </summary>
        /// <param name="input">The string whose values should be replaced.</param>
        /// <returns>A string.</returns>
        public static string RemoveHtml(this string input)
        {
            var stripTags = new Regex("</?[a-z][^<>]*>", RegexOptions.IgnoreCase);
            return stripTags.Replace(input, string.Empty);
        }
    }
}

目录
相关文章
|
3月前
|
SQL 开发者
访问者模式问题之FunctionExtractor是怎么工作的,以从SqlNode中提取函数名称的
访问者模式问题之FunctionExtractor是怎么工作的,以从SqlNode中提取函数名称的
|
5月前
|
Java
在 Java 中,类是一种定义对象的模板,它包含数据成员(字段)和方法。
在 Java 中,类是一种定义对象的模板,它包含数据成员(字段)和方法。
|
5月前
|
数据安全/隐私保护 C++
C++ 中的类是一种用户定义的数据类型,用于表示具有相似特征和行为的对象的模板。
C++ 中的类是一种用户定义的数据类型,用于表示具有相似特征和行为的对象的模板。
|
存储 Java
[初始java]——规范你的命名规则,变量的使用和注意事项,隐式转化和强制转化
[初始java]——规范你的命名规则,变量的使用和注意事项,隐式转化和强制转化
|
编译器 C++
C++ :类 和 对象 ※重点※(一)
C++ :类 和 对象 ※重点※
48 0
|
编译器 C++
C++ :类 和 对象 ※重点※(二)
C++ :类 和 对象 ※重点※(二)
75 0
|
Java 编译器 C++
C++ :类 和 对象 ※重点※(三)
C++ :类 和 对象 ※重点※(三)
82 0
|
前端开发 程序员 C#
【C#】通过扩展对象的方式,对字符串等数据类型进行数据进一步处理
在本篇文章中,我们讲一起了解下对象扩展的使用 在实际项目开发中,对象扩展使用的场景还是挺多的,比如:需要对时间值进行再处理,或者字符串中的斜杠(/)转为反斜杠(\)
118 0
给出n,构造含有n个子1337的字符串
给出n,构造含有n个子1337的字符串
68 0
|
Java 编译器 Scala
主构造器和辅助构造器的细节|学习笔记
快速学习主构造器和辅助构造器的细节。
133 0