C# Unity使用正则表达式去除部分富文本的代码示例

 更新时间:2023年03月16日 10:40:26   作者:莲子君w  
正则表达式在我们日常开发中的用处不用多说了吧,下面这篇文章主要给大家介绍了关于C# Unity使用正则表达式去除部分富文本的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

使用正则表达式去除富文本

最近在工作的时候,遇到一个需求,要把富文本给去除,说实话这个功能还是很简单的,但是我遇到的问题又没有那么简单……

去除部分富文本标记

我们有一段字符串,有很多的富文本标记,如:<size=60></size><color=#F0F0F0></size>等等。但是我们并不需要去除所有的富文本标记,因为我需要保留颜色的富文本标记,只去除字体大小的富文本标记,而且字符串里富文本的字体大小标记还有各种大小,非常令人头痛。

在网上也能找到各种去除富文本的代码,但是很多基本都是全部标记都去除的,而且是靠找<>的位置来去除的,那如果我们的字符串里本身就带<>,那么括号里的文字也会被去除掉……

后来主程叫我去研究一下正则表达式,一行代码就解决了。

代码

private string RemoveRichTextSize(string sourceText)
{
	sourceText = Regex.Replace(sourceText, @"(<size=(\d+)>|</size>)", "");

	return sourceText;
}

其实很简单,就使用Regex.Replace()函数就行了,最主要的是要了解正则表达式的使用。

Regex.Replace(原本的文本, 匹配规则, 替换的内容);

Regex.Replace函数需要输入三个参数,接下来简单说明
因为我需要把正则的内容剔除,所以替换的内容就是"",这样就做到把内容去掉了
匹配规则里 @"(A|B)" 代表了匹配A或B
</size>就是富文本的尾部
而富文本的头部<size=(\d+)>就是难点了
\d代表了匹配一个数字字符[0-9](\d+)代表了匹配一个以上的数字

通过修改匹配规则,你也可以做到只去除富文本的颜色属性或者斜体属性等等。

在写这个功能的时候,参考了这位大佬的文章,里面也有常用的正则匹配规则,可以参考使用。

C# 正则表达式大全

总结

到此这篇关于C# Unity使用正则表达式去除部分富文本的文章就介绍到这了,更多相关C# Unity正则去除部分富文本内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#规则引擎RulesEngine的具体使用

    C#规则引擎RulesEngine的具体使用

    这篇文章主要介绍了C#规则引擎RulesEngine的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • C#多线程之线程锁

    C#多线程之线程锁

    这篇文章介绍了C#多线程中的线程锁,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • C#、ASP.NET通用扩展工具类之TypeParse

    C#、ASP.NET通用扩展工具类之TypeParse

    这篇文章主要介绍了C#、ASP.NET通用扩展工具类之TypeParse,使用了此类,类型转换方便多了,本文直接给出实现代码和使用方法,需要的朋友可以参考下
    2015-06-06
  • 关于C# 调用Dll 传递字符串指针参数的问题

    关于C# 调用Dll 传递字符串指针参数的问题

    这篇文章主要介绍了C# 调用Dll传递字符串指针参数,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01
  • 一文掌握C# ListView控件的用法和示例代码

    一文掌握C# ListView控件的用法和示例代码

    ListView控件提供了丰富的属性和事件,可以用于实现各种各样的表格视图,包括带有单元格编辑、排序和分组等功能,本文介绍了一些常见的 ListView 控件的用法和示例代码,感兴趣的朋友一起看看吧
    2024-02-02
  • 一文探索C#中实现双向链表的方法

    一文探索C#中实现双向链表的方法

    这篇文章主要为大家详细介绍了C#中的双向链表的实现,揭秘双向链表内实现诸多方法的那些事,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-03-03
  • C#访问网络共享文件夹的方法

    C#访问网络共享文件夹的方法

    这篇文章主要为大家详细介绍了C#访问网络共享文件夹的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • 同时兼容JS和C#的RSA加密解密算法详解(对web提交的数据加密传输)

    同时兼容JS和C#的RSA加密解密算法详解(对web提交的数据加密传输)

    这篇文章主要给大家介绍了关于同时兼容JS和C#的RSA加密解密算法,通过该算法可以对web提交的数据进行加密传输,文中通过图文及示例代码介绍的非常详细,需要的朋友们可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • C# 利用Aspose.Words.dll将 Word 转成PDF

    C# 利用Aspose.Words.dll将 Word 转成PDF

    关于word转成pdf的方法网上有很多。大部分需要借助office 2007及以上版本的组件。安装配置起来比较麻烦。今天偶然得之“Aspose.Words.dll”可以实现
    2013-08-08
  • C#使用SqlBulkCopy批量复制数据到数据表

    C#使用SqlBulkCopy批量复制数据到数据表

    这篇文章主要介绍了C#使用SqlBulkCopy批量复制数据到数据表的方法,较为详细的讲述了SqlBulkCopy批量复制数据到数据表的原理与实现技巧,需要的朋友可以参考下
    2014-10-10

最新评论