c# - 如何拆分具有逗号和空格组合字符的文本?
问题描述
我有以下一行,我想用逗号分隔它。
“克拉克肯特,你好韦恩先生,发送于下午 3:38。”
听起来很容易对吧?问题是文本不包含单个逗号字符。您在文本中看到的逗号是单个字符,它是逗号和空格的组合(只需将上面的句子复制粘贴到您的文本编辑器中并检查出来)。
问题是:我需要用逗号分隔文本。虽然我可以复制粘贴字符并将其添加为我的分隔符之一,但我想知道是否可以将此类文本转换为可以用逗号分隔的文本。好吧,暂时不用担心中文单词。与您在文本中看到的最后一个字符的情况类似。实际上,当我的应用程序语言设置为中文时,就会出现这种行为。
仅供参考:我认为这样的逗号是不可打印/非 ascii char 但令我惊讶的是,当我在控制台中打印文本时,我得到:
这是我的输入和预期输出:
输入 :"Clark Kent,Hello Mr.Wayne,发送于 3:38 PM。"
预期输出:{"Clark Kent", "Hello Mr.Wayne", "发送于 3:38 PM。"}
.
解决方案
您面临的逗号是“全角逗号”(十六进制:0xff0c)。可以使用 string.Replace 方法用逗号和空格替换的常规 unicode 字符:
s.Replace("<fullwidthComma>", "<trueComma><space>");
推荐阅读
- c# - 将音频缓冲区从网页流式传输到 C# Google Cloud Speech to Text SDK 并收到 400 错误
- c# - 获取 System.Drawing.Color 值作为 ARGB 十六进制代码
- java - Weblogic - ClassNotFoundException - 部署期间
- docker - 为什么我不能总是用 Ctrl-C 杀死一个 docker 进程?
- ios - iOS 模拟器 - 从 Finder 中拖动图像未添加到 Xcode 10 中的照片
- bash - Makefile - 编译所有子目录并在单独的目录中输出 .o 文件
- clips - CLIPS:当值不在多槽中时匹配
- android - 支持库必须使用 compileSdkVersion 28 的确切版本规范错误
- django - 如何在我的 django 模板中修复此错误?
- .htaccess - htaccess 重写用于修改 url 结构和重定向的问题