美文网首页
关于解析文本中空格的坑-部分空格不能识别

关于解析文本中空格的坑-部分空格不能识别

作者: Jesscia_Liu | 来源:发表于2020-05-06 17:22 被阅读0次

1、场景描述

目前做一款教育软件涉及到文本解析需要读取txt文件中的文本,然后按照用空格进行筛选。
然鹅,读取字符串后使用空格对字符串进行分割时,遇到了个别空格不能识别的问题。

2、问题拓展

  • 无间断空格 U+00A0 到底是用来干什么的?
  • 就是我们所谓的“假”的空格,能被用作文件名的空格,使用word编辑文本时可以使用ctrl+shift+space来输入无间断空格。

The non-breaking space (U+00A0 Unicode, 160 decimal, ) is not the same as the space character (U+0020 Unicode, 32 decimal). Well, both of them seems to be a “space”, but they are absolutely different characters.

  • 无间断空格和普通的空格符unicode编码不同,虽然他们在显示上都是正常的空格符,但是他们编码不同导致你在对包含空格的值进行排序、筛选或者搜索时识别失败无法正确匹配,所以需要把数据源中无间断空格U+00A0全部替换成普通空格U+0020。

3、问题解决

  • 建议在后端采用正则替换成统一字符,如下
var s = ' ' // 假设这里是一个160的空格。
var reg = new RegExp(String.fromCharCode(160),"gm");
var 32sp = String.fromCharCode(32)
s = s.replace(reg, 32sp);

【参考文献】

不同unicode编码的空格挖的坑

相关文章

  • 关于解析文本中空格的坑-部分空格不能识别

    1、场景描述 目前做一款教育软件涉及到文本解析需要读取txt文件中的文本,然后按照用空格进行筛选。然鹅,读取字符串...

  • EXCEL/WPS中用于数据清洗工作的函数小结

    1、trim函数 用途:除了单词之间的单个空格外,清除文本中所有的空格。在从其他应用程序中获取带有不规则空格的文本...

  • Markdown语法

    斜体语法:斜体文本加粗语法:加粗文本斜体加粗:斜体加粗文本效果如下图:(注意:*与内容间不能有空格) 手动输入空格...

  • html常用文字标签

    让文本强制换行 不换行空格   半角空格   全角空格   窄空格 &zw...

  • Excel函数:去除Excel中的空格

    TRIM函数用于excel中清除空格,除了单词之间的单个空格外,文本中所有的空格将被清除。在从其他应用程序中获取带...

  • 未整理

    {' '} - 这里: {' '} 是空格的意思。 标签中不能直接显示空格,需要用 {' '} 来代替空格

  • Markdown学习

    标题 # + 空格键 +文本 =标题 ## + 空格键 + 文本 =副标题 字体 *hello world*会变成...

  • H5-day1-基础标签

    标签 1.html中是不识别空格,tab和回车的。其中: 空格 这是段落 换行 如果回车后面紧跟br会被识别成一个...

  • HTML标签

    中删除 地址 加粗 斜体 换行 水平线 空格-文本分隔符 空格 <小于 > 有序列表 属性reversed= “...

  • 富文本空格

    修改wxDiscode.js文件的strcharacterDiscode方法中 str = str.replace...

网友评论

      本文标题:关于解析文本中空格的坑-部分空格不能识别

      本文链接:https://www.haomeiwen.com/subject/xlhdihtx.html