C# 正则表达式用于删除混合有多种不同语言、unicode 字母的文本中的不可打印字符和控制字符

2023-11-22

我将不胜感激你的帮助,因为我不知道要使用哪个范围的字符,或者是否有像 [[:cntrl:]] 这样的字符类,我在 ruby​​ 中找到了?

通过不可打印,我的意思是在打印输入字符串时删除 ie 输出中未显示的所有字符。请注意,我寻找 C# 正则表达式,我的代码没有问题


您可以使用以下命令删除所有控制字符和其他不可打印字符

s = Regex.Replace(s, @"\p{C}+", string.Empty);

The \p{C}Unicode 类别类匹配所有控制字符,甚至是 ASCII 表之外的控制字符,因为在 .NET 中,Unicode 类别类默认支持 Unicode。

将其细分为子类别

  • 仅匹配基本控制字符你可以使用\p{Cc}+,参见 65 个字符其他,控制统一码类别。它等于[\u0000-\u0008\u000E-\u001F\u007F-\u0084\u0086-\u009F \u0009-\u000D \u0085]+ regex.
  • 仅匹配161 其他格式 chars包括众所周知的软连字符(\u00AD), 零宽度空间 (\u200B)、零宽度非连接符 (\u200C)、零宽度连接符 (\u200D),从左到右标记(\u200E) 和从右到左标记 (\u200F) use \p{Cf}+。包括星体位置代码点在内的等效项是(?:[\xAD\u0600-\u0605\u061C\u06DD\u070F\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC38]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F])+ regex.
  • 匹配137,468 其他私人使用控制代码点你可以使用\p{Co}+,或其等价物,包括星体位置代码点,(?:[\uE000-\uF8FF]|[\uDB80-\uDBBE\uDBC0-\uDBFE][\uDC00-\uDFFF]|[\uDBBF\uDBFF][\uDC00-\uDFFD])+.
  • 匹配2,048 其他,代孕代码点包括一些表情符号,您可以使用\p{Cs}+, or [\uD800-\uDFFF]+ regex.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# 正则表达式用于删除混合有多种不同语言、unicode 字母的文本中的不可打印字符和控制字符 的相关文章

  • C++ 数组中的多字节 UTF-8

    我在处理数组中的 3 字节 Unicode UTF 8 字符时遇到了问题 当它们位于 char 数组中时 我收到多字符字符常量和隐式常量转换警告 但当我使用 wchar t 数组时 wcout 根本不返回任何内容 由于项目的性质 它必须是数
  • 为什么不能将函数中变量的最后一次赋值视为移动?

    在这样的代码中 class X X const X X const X void f X a X b a code that doesn t use a 我的理解是最后一个语句调用复制构造函数而不是移动构造函数 假设a不再使用于f 编译器是
  • Javascript正则表达式单引号

    我的正则表达式是 var re a z A Z 1 15 我想允许这样 单引号 我怎样才能做到这一点 例如 您可以使用以下正则表达式来允许类似的字符串abcd dfgh A Za z A Za z
  • minidump stackwalk 与 gdb 回溯

    我的 Firefox 中有一个漏洞触发器 CVE 2018 18492 它会崩溃并给出 SIGSEGV 我用过breakpadminidump stackwalk从崩溃时生成的小型转储文件中获取其堆栈跟踪 我得到如下内容 Thread 0
  • 如何确保我们读取 boost::child 进程中的所有行

    我在上面看到了下面的代码boost child文档页面 其中解释了如何读取子进程的输出 http www boost org doc libs 1 64 0 doc html boost process tutorial html http
  • C# 是否包含 IParsable 或 ItryParsable

    显然 为您自己的解决方案实现以下接口将相当简单 public interface IParsable
  • 除法未输出正确答案c++

    我是 C 新手 我正在尝试编写一个基本的数学程序来热身于该语言 当我尝试解决 9 2 问题或任何带有小数的问题时 答案似乎是错误的 我想要 4 50 的输出 但我一直得到 4 00 造成这种情况的原因是什么以及如何预防 谢谢 double
  • 将不同的单词保存到链接列表中

    基本上我这里有两个链接列表 列表和不同的 有几组单词之前已保存到 列表 结构中 我要编写一个程序 它会找到不同 唯一的单词并将其保存到 不同 结构中 这是我到目前为止根据我的指针概念得到的结果 然而 当我尝试打印 distinct 时 程序
  • 在运行时检查 GCC 版本

    我需要找出 C 程序执行过程中 运行时 可用的 系统中安装的 GCC 版本 主要版本和次要版本 意思是 以编程方式提取可用 gcc 的版本 就像我在 shell 中输入 gcc version 一样 但在 c 程序中 The GNUC an
  • 虚拟调用与类型检查的另一个例子

    Problem 我发誓 每次我脑子里都在想 我应该使用虚拟调用而不是类型检查 例如 if obj is Foo else if obj is Bar 我想出了另一个例子 我不知道如何实现前者 我正在通过串行端口实现分组协议 一些伪代码可以最
  • Promise.defer 的正确模式是什么?

    我正在使用 TypeScript 和async await来表示异步工作流程 该工作流程的一部分是调用 Web Worker 并在其回调结果时继续 在 C 中 我会创建一个TaskCompletionSource await its Tas
  • 是否有在 std 容器中使用 unique_ptr 的透明方法?

    有没有透明的使用方式std unique ptr在容器中 include
  • 在 C++ 中将浮点值作为数组中的索引

    浮点值可以用作数组的索引吗 如果用作索引的表达式生成浮点值 会发生什么情况 float 值将被转换为 int 根据编译器的警告级别 它可能会给出警告或错误 s1 q 12 2 same as q 12 s2 q 12 999999 same
  • 什么是 .NET 程序集?

    什么是 NET 程序集 我浏览了网络 但无法理解其定义 程序集是 net 应用程序的最小部署单元 它可以是一个dll or an exe 它主要有两种类型 私人集会 dll 或 exe 是一个应用程序的专有财产 一般存放在应用程序根文件夹中
  • 将字符串与 perl 中的模式对齐?

    我在方括号内有一些字符串块 如下所示 p1 text1 label1 p2 text2 label2 p3 text3 label3 等等 每个块里面有什么并不重要 但有时会有一些没有用方括号括起来的零散文本块 例如 p1 text1 la
  • 我可以调整移出的矢量的大小吗?

    我有一些代码 我想在其中绝对确保移出的代码std vector不会留下秘密数据 考虑加密密钥管理 在我的班级的移动构造函数中 我做了类似的事情 X X rhs secret vector std move rhs secret vector
  • 如何获取结构数据的十六进制转储

    finalize char hdrs sendip data headers int index sendip data data sendip data pack 出于调试目的 我想要一个十六进制转储data and pack结构体 其类
  • 无法打开包含的文件

    我使用的是 BorlandC 和 Windows 7 当我编译该文件时 出现以下错误 Error Assign C Unable to open include file stdio h Error Assign C Unable to o
  • IIS / .Net 只允许对给定用户会话进行单个并发响应

    这是我的问题 我们有一个 Net 4 5 Web 表单应用程序 由于服务器端的大量数据访问和操作 应用程序中的某些页面需要很长时间才能加载 如果用户在页面完成加载之前关闭浏览器选项卡 然后打开新选项卡 则新选项卡中对应用程序的任何请求都将挂
  • 工厂模式:typedef Class *(createClassFunction)(void)

    什么是typedef Class createClassFunction void 或者另一种变化是typedef Class stdcall CreateClassFunction void 代表 这是什么意思 我该怎么解释呢 特别是在工

随机推荐