zoukankan      html  css  js  c++  java
  • 如何批量添加中文和英文数字之间的空格?用正则表达式吧

    1、中文与英文数字混合使用,排版有规范

    写作中,我们经常遇到以下中文与英文、数字混用的情况。

    我自学python编程,是在xue.cn上进行的。时耗方面,基础功仅需50多小时,加上很多实战,包括初步运用pandas和爬虫处理业务需求,加在一起也才200多小时而已。

    其实,中文和数字、英文之间有一个空格会更美观。

    我自学 python 编程,是在 xue.cn 上进行的。时耗方面,基础功仅需 50 多小时,加上很多实战,包括初步运用 pandas 和爬虫处理业务需求,加在一起也才 200 多小时而已。

    但我们可能尚未养成这样的输入习惯,以至于要么全部没有空格,要么部分加了空格,部分没有。当然您可以不在乎这个文本规范。对于那些在意这个文本规范的人,想要规范格式,要么人工逐项修改,偶尔写写短文时这么操作貌似并不麻烦。但日积月累,这也将是一项不菲的时间开销。

    要么,可以试试用正则匹配批量处理。——正是我这篇笔记想要分享的。你无须懂编程,也可使用特定工具快速完成批量添加中文和英文数字之间的空格。

    我掌握这个技能,最初并非源于我个人写作排版,而是近日处理很多文字内容编辑时的一个刚需。掌握这个技能,帮我显著提高了工作效率,把重复性肌肉劳动大幅度降低。

    2、正则表达式省掉千次万次机械操作

    我的电脑中可以没有微软或金山的任何办公软件,但不可以没有 vscode 和 jupyter lab。vscode 不仅可以用于写代码,还可用于写文章。工作中需基于 github 协作时,我也采用 vscode 操作。

    在 vscode 中存在以下搜索页签,展开具有以下选项:

    image

    第一行 search 填入所应匹配的样式。搜索支持三种模式。普通模式可直接复制粘贴你想要的样式,即便它有换行也是 OK 的。——在常见的办公软件中通常不支持复制粘贴换行,这足见 vscode 的强大实用。

    image

    想要搜索任意中文和数字或英文字母的组合,需要用到以下正则表达式,并启动正则匹配搜索模式:

    • 中文在左,数字或英文字母在右 ([u4e00-u9fa5]+)([da-zA-Z]+)
    • 数字或英文字母在左,中文在右 ([da-zA-Z]+)([u4e00-u9fa5]+)

    然后 replace 行填写 $1 $2用于定义格式。

    image

    如果文件非常多,想要对指定文件范围内实施,可以在第 3、4 行分别定义文件范围,所支持的语法当然也是正则表达式啦。

    vscode 非常棒的一点在于,此时我已经可以预览修改后的效果,待确认无误后,再点击执行全部替换即可。

    回到最初的需求,想要在中文紧挨着英文数字之间增加空格,分别处理中文在左、中文在右两个情况即可完成。是不是很简单呢?

    3、背后的原理?10 分钟系统理解正则表达式

    这背后的知识点,就是正则表达式。——这并非某种编程语言所特有的,而是几乎所有的编程语言都支持的一种处理。它采用了一些字符构成的语法来描述规则,然后便于对文本实施搜索、捕获、替换等操作。

    如果你想要对正则表达式来个 10 分钟系统了解,可访问 xue.cn 以游客模式直接阅读《自学是门手艺》的第 3 章“3.2.4 正则表达式”即可。

    这个 github 链接,你将看到我采用这一技巧对自己的编程学习笔记所作出的批量修改。——是的,这么大量的修改,只需一分钟。

  • 相关阅读:
    ajax优缺点
    关于测量专业软件使用感受及建议
    12.7
    12.6
    场景调研
    对搜狗输入法的看法及建议
    12.9
    12.8
    12.5站立会议
    12.4站立会议
  • 原文地址:https://www.cnblogs.com/jjliu/p/11945132.html
Copyright © 2011-2022 走看看