当前位置: 首页 > news >正文

【超详细】C#自定义工具类-StringHelper

目录

StringHelper工具类

1.主要功能

1.基础工具方法:null/空判断

2.字符串截取与分割:安全处理子串

3.格式转换与类型转换:数据格式处理

4.正则表达式与验证:规则校验与字符过滤

5.数据脱敏与加密:隐私信息保护

6.大小写转换:文本格式标准化

7.Unity文本样式处理

2.完整代码

3.测试


       本篇文章分享一下工具类StringHelper。

StringHelper工具类

1.主要功能

1.基础工具方法:null/空判断

       提供字符串最基础的有效性校验,避免空引用异常。

/// <summary>
/// 判断字符串是否为 null、空字符串或仅包含空白字符(空格、制表符等)
/// </summary>
/// <param name="str">待判断的字符串</param>
/// <returns>若为 null/空/纯空白则返回 true,否则返回 false</returns>
public static bool IsNullOrEmpty(this string str)
{return string.IsNullOrEmpty(str);
}

2.字符串截取与分割:安全处理子串

       解决原生Substring方法易越界的问题,同时提供场景化的分割能力。

方法名

核心功能

SubstringSafe

安全截取指定长度,超长时可加后缀(如 ...)

SplitFromLeft

简化左侧截取(封装 SubstringSafe)

SplitFromRight

安全截取右侧指定长度

GetSplitLastString

按分隔符分割后,取最后一个非空子串

/// <summary>
/// 安全截取字符串,避免因长度不足导致的异常
/// </summary>
/// <param name="str">待截取的字符串</param>
/// <param name="length">最大截取长度(必须大于0,否则返回空)</param>
/// <param name="suffix">当字符串被截断时添加的后缀(如 "...", 默认为空)</param>
/// <returns>
/// 若字符串长度 ≤ 截取长度,返回原字符串;
/// 否则返回前 length 个字符 + 后缀;
/// 若字符串为空或 length ≤ 0,返回空字符串
/// </returns>
public static string SubstringSafe(this string str, int length, string suffix = "")
{if (str.IsNullOrEmpty() || length <= 0) return "";return str.Length <= length ? str : str.Substring(0, length) + suffix;
}
/// <summary>
/// 从字符串左侧截取指定长度(封装 SubstringSafe,简化左侧截取调用)
/// </summary>
/// <param name="str">待截取的字符串</param>
/// <param name="length">左侧截取长度</param>
/// <returns>左侧截取的子串(长度不足时返回原字符串)</returns>
public static string SplitFromLeft(this string str, int length)
{return str.SubstringSafe(length);
}
/// <summary>
/// 从字符串右侧截取指定长度(安全处理,避免越界)
/// </summary>
/// <param name="str">待截取的字符串</param>
/// <param name="length">右侧截取长度</param>
/// <returns>
/// 若字符串长度 ≤ 截取长度,返回原字符串;
/// 否则返回从右侧第 length 个字符开始的子串;
/// 若字符串为空或 length ≤ 0,返回空字符串
/// </returns>
public static string SplitFromRight(this string str, int length)
{if (str.IsNullOrEmpty() || length <= 0) return "";return str.Length <= length ? str : str.Substring(str.Length - length, length);
}
/// <summary>
/// 按指定分隔符分割字符串后,返回最后一个非空子串
/// </summary>
/// <param name="fullString">待分割的完整字符串</param>
/// <param name="separator">分割符(支持多个字符,如 '/', '\\')</param>
/// <returns>
/// 分割后的最后一个非空子串;
/// 若分割后无有效子串,返回原字符串;
/// 若原字符串为空,返回空
/// </returns>
public static string GetSplitLastString(this string fullString, params char[] separator)
{if (fullString.IsNullOrEmpty()) return fullString;//分割时忽略空项(如连续分隔符产生的空字符串)string[] parts = fullString.Split(separator, StringSplitOptions.RemoveEmptyEntries);return parts.Length == 0 ? fullString : parts[parts.Length - 1];
}

3.格式转换与类型转换:数据格式处理

       实现字符串与常用类型的安全转换,以及基础格式清洗。

1)类型转换:

●ToInt:将字符串转为int,失败时返回默认值(避免int.Parse抛异常)。

●ToDateTime:将字符串转为DateTime,失败时返回默认值(适配日期文本解析)。

2)格式清洗:

●RemoveSpaces:移除字符串中所有空格(包括中间和首尾空格)。

/// <summary>
/// 将字符串转换为 int 类型,转换失败时返回默认值
/// </summary>
/// <param name="str">待转换的字符串(如 "123")</param>
/// <param name="defaultValue">转换失败时的默认值(默认为 0)</param>
/// <returns>转换后的 int 值,或默认值</returns>
public static int ToInt(this string str, int defaultValue = 0)
{return int.TryParse(str, out int result) ? result : defaultValue;
}
/// <summary>
/// 将字符串转换为 DateTime 类型,转换失败时返回默认值
/// </summary>
/// <param name="str">待转换的字符串(如 "2025-10-16")</param>
/// <param name="defaultValue">转换失败时的默认值(默认为 DateTime.MinValue)</param>
/// <returns>转换后的 DateTime 值,或默认值</returns>
public static DateTime ToDateTime(this string str, DateTime defaultValue = default)
{return DateTime.TryParse(str, out DateTime result) ? result : defaultValue;
}
/// <summary>
/// 移除字符串中所有空格(包括中间空格、首尾空格)
/// </summary>
/// <param name="str">待处理的字符串(如 "a b c")</param>
/// <returns>移除空格后的字符串(如 "abc"),原字符串为 null 则返回空</returns>
public static string RemoveSpaces(this string str)
{return str?.Replace(" ", "") ?? "";
}

4.正则表达式与验证:规则校验与字符过滤

       基于正则实现常见数据格式校验,以及特殊字符处理。

1)格式验证:

●IsMatch:通用正则匹配(判断字符串是否符合自定义正则规则)。

●IsEmail:校验邮箱格式(使用^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$匹配常见邮箱)。

●IsPhoneNumber:校验中国手机号(11位数字,以13-19开头)。

2)字符处理:

●ReplaceSpecialChars:移除预设的特殊字符(如!@#$%),用于过滤非法输入。

●EscapeSpecialChars:转义正则中的特殊字符(如.→\.),避免正则语法错误。

/// <summary>
/// </summary>
/// <param name="str">待匹配的字符串</param>
/// <param name="pattern">正则表达式模式(如 @"^\d+$" 匹配纯数字)</param>
/// <returns>
/// 若字符串和模式均非空且匹配成功,返回 true;
/// 否则返回 false(包括字符串/模式为空的情况)
/// </returns>
public static bool IsMatch(this string str, string pattern)
{if (str.IsNullOrEmpty() || pattern.IsNullOrEmpty()) return false;return Regex.IsMatch(str, pattern);
}
/// <summary>
/// 判断字符串是否为合法的邮箱格式(基础校验)
/// </summary>
/// <param name="str">待验证的字符串(如 "test@example.com")</param>
/// <returns>若为合法邮箱格式返回 true,否则返回 false</returns>
public static bool IsEmail(this string str)
{//正则说明:支持字母、数字、下划线、减号及域名格式(如 user-name@sub.domain.com)return str.IsMatch(@"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$");
}
/// <summary>
/// 判断字符串是否为合法的中国手机号格式(11位数字,以13-19开头)
/// </summary>
/// <param name="str">待验证的字符串(如 "13800138000")</param>
/// <returns>若为合法手机号返回 true,否则返回 false</returns>
public static bool IsPhoneNumber(this string str)
{return str.IsMatch(@"^1[3-9]\d{9}$");
}
/// <summary>
/// 需要过滤的特殊字符集(正则表达式)
/// 包含:[]{}!@#$%^""'&*()?=&:;,.|
/// </summary>
private const string SpecialChars = @"[\[\]{}!@#$%^""'&*()?=&:;,.|]";
/// <summary>
/// 移除字符串中的特殊字符(替换为空白),用于过滤非法输入
/// </summary>
/// <param name="s">待处理的字符串(如 "user@#name")</param>
/// <returns>移除特殊字符后的字符串(如 "username")</returns>
public static string ReplaceSpecialChars(this string s)
{return s.IsNullOrEmpty() ? s : Regex.Replace(s, SpecialChars, "");
}
/// <summary>
/// 转义字符串中的正则特殊字符(如 .*+?^${}()|[]\),避免正则匹配时语法错误
/// </summary>
/// <param name="s">待转义的字符串(如 "a.b*c")</param>
/// <returns>转义后的字符串(如 "a\.b\*c")</returns>
public static string EscapeSpecialChars(this string s)
{if (s.IsNullOrEmpty()) return s;return Regex.Escape(s);
}

       想要了解正则表达式,可以参考【一文了解】正则表达式

5.数据脱敏与加密:隐私信息保护

       对敏感信息进行格式化处理,隐藏部分内容以保障隐私。

●MaskPhone:手机号脱敏(保留前3位和后4位,中间用****替换,如138****8000)。

●MaskName:姓名脱敏(保留姓氏,其余用*替换,如张*、李**)。

/// <summary>
/// 手机号脱敏处理:保留前3位和后4位,中间4位替换为 "*"
/// </summary>
/// <param name="phone">待脱敏的手机号(如 "13800138000")</param>
/// <returns>
/// 脱敏后的手机号(如 "138****8000");
/// 若输入非有效手机号或为空,返回原字符串
/// </returns>
public static string MaskPhone(this string phone)
{if (phone.IsNullOrEmpty() || !phone.IsPhoneNumber()) return phone;return phone.Substring(0, 3) + "****" + phone.Substring(7);
}
/// <summary>
/// 姓名脱敏处理:保留姓氏,其余字符替换为 "*"
/// </summary>
/// <param name="name">待脱敏的姓名(如 "张三"、"李四光")</param>
/// <returns>
/// 脱敏后的姓名(如 "张*"、"李**");
/// 若姓名为空或单字,返回原字符串
/// </returns>
public static string MaskName(this string name)
{if (name.IsNullOrEmpty()) return name;return name.Length == 1 ? name : name[0] + new string('*', name.Length - 1);
}

6.大小写转换:文本格式标准化

       提供精细化的大小写调整能力,满足不同场景的文本样式需求。

●FirstCharToUpper:仅首字母大写(如hello→Hello)。

●FirstCharToLower:仅首字母小写(如Hello→hello)。

●ToTitleCase:每个单词首字母大写(按空格分割,如helloworld→HelloWorld)。

/// <summary>
/// 将字符串首字母转换为大写,其余字符保持不变
/// </summary>
/// <param name="str">待转换的字符串(如 "hello")</param>
/// <returns>首字母大写的字符串(如 "Hello"),空字符串返回原字符串</returns>
public static string FirstCharToUpper(this string str)
{if (str.IsNullOrEmpty()) return str;return char.ToUpper(str[0]) + (str.Length > 1 ? str.Substring(1) : "");
}
/// <summary>
/// 将字符串首字母转换为小写,其余字符保持不变
/// </summary>
/// <param name="str">待转换的字符串(如 "Hello")</param>
/// <returns>首字母小写的字符串(如 "hello"),空字符串返回原字符串</returns>
public static string FirstCharToLower(this string str)
{if (str.IsNullOrEmpty()) return str;return char.ToLower(str[0]) + (str.Length > 1 ? str.Substring(1) : "");
}
/// <summary>
/// 将字符串中每个单词的首字母转换为大写(按空格分割单词)
/// </summary>
/// <param name="str">待转换的字符串(如 "hello world")</param>
/// <returns>每个单词首字母大写的字符串(如 "Hello World"),空字符串返回原字符串</returns>
public static string ToTitleCase(this string str)
{if (str.IsNullOrEmpty()) return str;//按空格分割单词,忽略空项(如连续空格)string[] words = str.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);for (int i = 0; i < words.Length; i++){words[i] = words[i].FirstCharToUpper();//复用首字母大写方法}return string.Join(" ", words);//拼接为完整字符串
}

7.Unity文本样式处理

       生成UI文本支持的HTML样式标签。

●AddColor:为文本添加颜色(将UnityColor转为RGB十六进制,生成<color=#FF0000>文本</color>)。

●AddBold:为文本添加加粗样式(生成<b>文本</b>)。

●AddItalic:为文本添加斜体样式(生成<i>文本</i>)。

/// <summary>
/// 为字符串添加 Unity UI 支持的 HTML 颜色样式(如 <color=#FF0000>文本</color>)
/// </summary>
/// <param name="message">需要添加颜色的文本</param>
/// <param name="color">Unity Color 类型的颜色(如 Color.red)</param>
/// <returns>包含颜色样式的字符串,原文本为空则返回原字符串</returns>
public static string AddColor(this string message, Color color)
{if (message.IsNullOrEmpty()) return message;string hex = ColorUtility.ToHtmlStringRGB(color);//转换 Color 为 RGB 十六进制(如 "FF0000")return $"<color=#{hex}>{message}</color>";
}
/// <summary>
/// 为字符串添加 Unity UI 支持的 HTML 加粗样式(如 <b>文本</b>)
/// </summary>
/// <param name="message">需要加粗的文本</param>
/// <returns>包含加粗样式的字符串,原文本为空则返回原字符串</returns>
public static string AddBold(this string message)
{return message.IsNullOrEmpty() ? message : $"<b>{message}</b>";
}
/// <summary>
/// 为字符串添加 Unity UI 支持的 HTML 斜体样式(如 <i>文本</i>)
/// </summary>
/// <param name="message">需要斜体的文本</param>
/// <returns>包含斜体样式的字符串,原文本为空则返回原字符串</returns>
public static string AddItalic(this string message)
{return message.IsNullOrEmpty() ? message : $"<i>{message}</i>";
}

2.完整代码

/// <summary>
/// StringHelper工具类
/// 封装常用字符串处理功能:通用字符串操作、数据验证、格式转换、Unity UI文本处理等
/// </summary>
public static class StringHelper
{#region 基础工具方法/// <summary>/// 判断字符串是否为 null、空字符串或仅包含空白字符(空格、制表符等)/// </summary>/// <param name="str">待判断的字符串</param>/// <returns>若为 null/空/纯空白则返回 true,否则返回 false</returns>public static bool IsNullOrEmpty(this string str){return string.IsNullOrEmpty(str);}#endregion#region 字符串截取与分割/// <summary>/// 安全截取字符串,避免因长度不足导致的异常/// </summary>/// <param name="str">待截取的字符串</param>/// <param name="length">最大截取长度(必须大于0,否则返回空)</param>/// <param name="suffix">当字符串被截断时添加的后缀(如 "...", 默认为空)</param>/// <returns>/// 若字符串长度 ≤ 截取长度,返回原字符串;/// 否则返回前 length 个字符 + 后缀;/// 若字符串为空或 length ≤ 0,返回空字符串/// </returns>public static string SubstringSafe(this string str, int length, string suffix = ""){if (str.IsNullOrEmpty() || length <= 0) return "";return str.Length <= length ? str : str.Substring(0, length) + suffix;}/// <summary>/// 从字符串左侧截取指定长度(封装 SubstringSafe,简化左侧截取调用)/// </summary>/// <param name="str">待截取的字符串</param>/// <param name="length">左侧截取长度</param>/// <returns>左侧截取的子串(长度不足时返回原字符串)</returns>public static string SplitFromLeft(this string str, int length){return str.SubstringSafe(length);}/// <summary>/// 从字符串右侧截取指定长度(安全处理,避免越界)/// </summary>/// <param name="str">待截取的字符串</param>/// <param name="length">右侧截取长度</param>/// <returns>/// 若字符串长度 ≤ 截取长度,返回原字符串;/// 否则返回从右侧第 length 个字符开始的子串;/// 若字符串为空或 length ≤ 0,返回空字符串/// </returns>public static string SplitFromRight(this string str, int length){if (str.IsNullOrEmpty() || length <= 0) return "";return str.Length <= length ? str : str.Substring(str.Length - length, length);}/// <summary>/// 按指定分隔符分割字符串后,返回最后一个非空子串/// </summary>/// <param name="fullString">待分割的完整字符串</param>/// <param name="separator">分割符(支持多个字符,如 '/', '\\')</param>/// <returns>/// 分割后的最后一个非空子串;/// 若分割后无有效子串,返回原字符串;/// 若原字符串为空,返回空/// </returns>public static string GetSplitLastString(this string fullString, params char[] separator){if (fullString.IsNullOrEmpty()) return fullString;//分割时忽略空项(如连续分隔符产生的空字符串)string[] parts = fullString.Split(separator, StringSplitOptions.RemoveEmptyEntries);return parts.Length == 0 ? fullString : parts[parts.Length - 1];}#endregion#region 格式转换与类型转换/// <summary>/// 将字符串转换为 int 类型,转换失败时返回默认值/// </summary>/// <param name="str">待转换的字符串(如 "123")</param>/// <param name="defaultValue">转换失败时的默认值(默认为 0)</param>/// <returns>转换后的 int 值,或默认值</returns>public static int ToInt(this string str, int defaultValue = 0){return int.TryParse(str, out int result) ? result : defaultValue;}/// <summary>/// 将字符串转换为 DateTime 类型,转换失败时返回默认值/// </summary>/// <param name="str">待转换的字符串(如 "2025-10-16")</param>/// <param name="defaultValue">转换失败时的默认值(默认为 DateTime.MinValue)</param>/// <returns>转换后的 DateTime 值,或默认值</returns>public static DateTime ToDateTime(this string str, DateTime defaultValue = default){return DateTime.TryParse(str, out DateTime result) ? result : defaultValue;}/// <summary>/// 移除字符串中所有空格(包括中间空格、首尾空格)/// </summary>/// <param name="str">待处理的字符串(如 "a b c")</param>/// <returns>移除空格后的字符串(如 "abc"),原字符串为 null 则返回空</returns>public static string RemoveSpaces(this string str){return str?.Replace(" ", "") ?? "";}#endregion#region 正则表达式与验证/// <summary>/// </summary>/// <param name="str">待匹配的字符串</param>/// <param name="pattern">正则表达式模式(如 @"^\d+$" 匹配纯数字)</param>/// <returns>/// 若字符串和模式均非空且匹配成功,返回 true;/// 否则返回 false(包括字符串/模式为空的情况)/// </returns>public static bool IsMatch(this string str, string pattern){if (str.IsNullOrEmpty() || pattern.IsNullOrEmpty()) return false;return Regex.IsMatch(str, pattern);}/// <summary>/// 判断字符串是否为合法的邮箱格式(基础校验)/// </summary>/// <param name="str">待验证的字符串(如 "test@example.com")</param>/// <returns>若为合法邮箱格式返回 true,否则返回 false</returns>public static bool IsEmail(this string str){//正则说明:支持字母、数字、下划线、减号及域名格式(如 user-name@sub.domain.com)return str.IsMatch(@"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$");}/// <summary>/// 判断字符串是否为合法的中国手机号格式(11位数字,以13-19开头)/// </summary>/// <param name="str">待验证的字符串(如 "13800138000")</param>/// <returns>若为合法手机号返回 true,否则返回 false</returns>public static bool IsPhoneNumber(this string str){return str.IsMatch(@"^1[3-9]\d{9}$");}/// <summary>/// 需要过滤的特殊字符集(正则表达式)/// 包含:[]{}!@#$%^""'&*()?=&:;,.|/// </summary>private const string SpecialChars = @"[\[\]{}!@#$%^""'&*()?=&:;,.|]";/// <summary>/// 移除字符串中的特殊字符(替换为空白),用于过滤非法输入/// </summary>/// <param name="s">待处理的字符串(如 "user@#name")</param>/// <returns>移除特殊字符后的字符串(如 "username")</returns>public static string ReplaceSpecialChars(this string s){return s.IsNullOrEmpty() ? s : Regex.Replace(s, SpecialChars, "");}/// <summary>/// 转义字符串中的正则特殊字符(如 .*+?^${}()|[]\),避免正则匹配时语法错误/// </summary>/// <param name="s">待转义的字符串(如 "a.b*c")</param>/// <returns>转义后的字符串(如 "a\.b\*c")</returns>public static string EscapeSpecialChars(this string s){if (s.IsNullOrEmpty()) return s;return Regex.Escape(s);}#endregion#region 数据脱敏与加密/// <summary>/// 手机号脱敏处理:保留前3位和后4位,中间4位替换为 "*"/// </summary>/// <param name="phone">待脱敏的手机号(如 "13800138000")</param>/// <returns>/// 脱敏后的手机号(如 "138****8000");/// 若输入非有效手机号或为空,返回原字符串/// </returns>public static string MaskPhone(this string phone){if (phone.IsNullOrEmpty() || !phone.IsPhoneNumber()) return phone;return phone.Substring(0, 3) + "****" + phone.Substring(7);}/// <summary>/// 姓名脱敏处理:保留姓氏,其余字符替换为 "*"/// </summary>/// <param name="name">待脱敏的姓名(如 "张三"、"李四光")</param>/// <returns>/// 脱敏后的姓名(如 "张*"、"李**");/// 若姓名为空或单字,返回原字符串/// </returns>public static string MaskName(this string name){if (name.IsNullOrEmpty()) return name;return name.Length == 1 ? name : name[0] + new string('*', name.Length - 1);}#endregion#region 大小写转换/// <summary>/// 将字符串首字母转换为大写,其余字符保持不变/// </summary>/// <param name="str">待转换的字符串(如 "hello")</param>/// <returns>首字母大写的字符串(如 "Hello"),空字符串返回原字符串</returns>public static string FirstCharToUpper(this string str){if (str.IsNullOrEmpty()) return str;return char.ToUpper(str[0]) + (str.Length > 1 ? str.Substring(1) : "");}/// <summary>/// 将字符串首字母转换为小写,其余字符保持不变/// </summary>/// <param name="str">待转换的字符串(如 "Hello")</param>/// <returns>首字母小写的字符串(如 "hello"),空字符串返回原字符串</returns>public static string FirstCharToLower(this string str){if (str.IsNullOrEmpty()) return str;return char.ToLower(str[0]) + (str.Length > 1 ? str.Substring(1) : "");}/// <summary>/// 将字符串中每个单词的首字母转换为大写(按空格分割单词)/// </summary>/// <param name="str">待转换的字符串(如 "hello world")</param>/// <returns>每个单词首字母大写的字符串(如 "Hello World"),空字符串返回原字符串</returns>public static string ToTitleCase(this string str){if (str.IsNullOrEmpty()) return str;//按空格分割单词,忽略空项(如连续空格)string[] words = str.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);for (int i = 0; i < words.Length; i++){words[i] = words[i].FirstCharToUpper();//复用首字母大写方法}return string.Join(" ", words);//拼接为完整字符串}#endregion#region Unity 文本样式处理/// <summary>/// 为字符串添加 Unity UI 支持的 HTML 颜色样式(如 <color=#FF0000>文本</color>)/// </summary>/// <param name="message">需要添加颜色的文本</param>/// <param name="color">Unity Color 类型的颜色(如 Color.red)</param>/// <returns>包含颜色样式的字符串,原文本为空则返回原字符串</returns>public static string AddColor(this string message, Color color){if (message.IsNullOrEmpty()) return message;string hex = ColorUtility.ToHtmlStringRGB(color);//转换 Color 为 RGB 十六进制(如 "FF0000")return $"<color=#{hex}>{message}</color>";}/// <summary>/// 为字符串添加 Unity UI 支持的 HTML 加粗样式(如 <b>文本</b>)/// </summary>/// <param name="message">需要加粗的文本</param>/// <returns>包含加粗样式的字符串,原文本为空则返回原字符串</returns>public static string AddBold(this string message){return message.IsNullOrEmpty() ? message : $"<b>{message}</b>";}/// <summary>/// 为字符串添加 Unity UI 支持的 HTML 斜体样式(如 <i>文本</i>)/// </summary>/// <param name="message">需要斜体的文本</param>/// <returns>包含斜体样式的字符串,原文本为空则返回原字符串</returns>public static string AddItalic(this string message){return message.IsNullOrEmpty() ? message : $"<i>{message}</i>";}#endregion
}

3.测试

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class StringTest : MonoBehaviour
{private void Start(){//基础工具方法string str1 = "1234567890";Debug.Log($"str1:{str1}");Debug.Log(StringHelper.IsNullOrEmpty(str1));//字符串截取与分割string str2 = "abcdefgh";Debug.Log(StringHelper.SubstringSafe(str2,3,"..."));Debug.Log(StringHelper.SplitFromLeft(str2,5));Debug.Log(StringHelper.SplitFromRight(str2,2));string str3 = "hello/c#/hello/world";Debug.Log($"str2:{str3}");Debug.Log(StringHelper.GetSplitLastString(str3,'/'));//格式转换与类型转换string str4 = "09";Debug.Log($"str4:{str4}");Debug.Log($"str3:{StringHelper.ToInt(str3)},str4:{StringHelper.ToInt(str4)}");string str5 = "2025/10/17 00:00:00";Debug.Log($"str5:{str5}");Debug.Log($"str3:{StringHelper.ToDateTime(str3)},str4:{StringHelper.ToDateTime(str5)}");string str6 = "hello world";Debug.Log($"str6:{str6}");Debug.Log(StringHelper.RemoveSpaces(str6));//正则表达式与验证Debug.Log($"str1是否全是数字?{StringHelper.IsMatch(str1,@"^\d+$")}");Debug.Log($"str1是否是邮箱?{StringHelper.IsEmail(str1)}");string str7 = "13111445566";Debug.Log($"str7:{str7}");Debug.Log($"str7是否是手机号?{StringHelper.IsPhoneNumber(str7)}");string str8 = "hello[#world%";Debug.Log($"str8:{str8}");Debug.Log($"str8去除特殊字符:{StringHelper.ReplaceSpecialChars(str8)}");string str9 = "a.b*c";Debug.Log($"str9:{str9}");Debug.Log($"str9转义后特殊字符:{StringHelper.EscapeSpecialChars(str9)}");//数据脱敏与加密Debug.Log($"str7脱敏:{StringHelper.MaskPhone(str7)}");string str10 = "张三";Debug.Log($"str10:{str10}");Debug.Log($"str10脱敏:{StringHelper.MaskName(str10)}");//大小写转换Debug.Log($"str6转大写:{StringHelper.ToTitleCase(str6)}");string str11 = "Hello world";Debug.Log($"str11:{str11}");Debug.Log($"str11转小写:{StringHelper.FirstCharToLower(str11)}");Debug.Log($"str6每个单次首字符转大写:{StringHelper.ToTitleCase(str6)}");Debug.Log(StringHelper.AddColor(str1,Color.red));Debug.Log(StringHelper.AddBold(str1));Debug.Log(StringHelper.AddItalic(str1));}
}

       好了,本次的分享到这里就结束啦,希望对你有所帮助~

http://www.dtcms.com/a/494745.html

相关文章:

  • 网站关闭与域名备案怎么设置网页版浏览器
  • 11G显存DPO强化学习微调实战
  • 在 Ubuntu 上安装 MinIO 并使用 Python 封装类操作对象存储
  • 基于DDGS实现图片搜索,文本搜索,新闻搜索
  • 点胶喷嘴技术支持东莞网站建设昆明软件定制
  • 怎样做钓鱼网站网站编辑教程
  • AI驱动软件测试全流程自动化:从理论到实践的深度探索
  • 开源接口管理工具PostIn,从安装到入门零基础指南
  • 构建未来的智能体:Coze 的能力、部署与应用场景
  • DBCO-Sulfo-NHS ester酯,1400191-52-7在生物正交连接体系中的作用机制与功能开发
  • 【cursor】通用开发环境配置指南(AI辅助开发最佳实践)
  • 【数据结构】双向链表“0”基础知识讲解 + 实战演练
  • 药品经营许可证识别技术:通过深度学习算法实现资质文件的自动化识别与核验
  • 网站的建设思想企业app定制
  • YOLOv3 目标检测算法核心技术
  • MySQL 主从复制故障排查及解决方案
  • 告别单打独斗:多智能体协作如何解决复杂问题?
  • Netty连接断开检测:Epoll与NIO的对比及实战解决方案
  • 神经网络之反向传播
  • el-table-column show-overflow-tooltip 只能显示纯文本,无法渲染 <p> 标签
  • (定时任务)接上篇:定时任务的分布式执行与分布式锁使用场景
  • 广州网站制作哪家专业凡科互动游戏可以作弊码
  • caching_sha2_password认证插件说明
  • 13.继承(一)
  • vue3:el-progress的圆形无线滚动,心跳、呼吸效果,加载中的效果
  • 高速光耦:电子系统的卓越赋能者
  • 鸿蒙HAP文件数字签名提取与解析
  • 《宋代水墨国漫3D:动态镜头笔触连贯的开发拆解》
  • Fast-Agent:重新定义AI Agent开发的“快“与“简“
  • 做电力的系统集成公司网站个人简历在线制作免费