在中文、英文、数字之间用空格隔开,观感和阅读上显得更加分明,也就是说整体的排版会更加的好看,但是如果在编写文章的时候去添加,就会显得特别的繁琐和降低编辑或写作效率了,不过为了养成习惯,还是推荐在编写的时候手动添加空格

这篇文章是给懒人朋友提供福利,不用手动添加空格了,首先我们来看一下什么时候需要添加空格

1. 中英文之间需要增加空格

2. 中文与数字之间需要增加空格

3. 数字与单位之间需要增加空格

4. 全角标点与其他字符之间不加空格

以下分别对于普通的Html文章、WordPress文章以及使用MarkDown生成的文章说明

WordPress

WordPress我们先说使用PHP来解决的方法,有2种方案,任选一种就可以,在主题的functions.php文件中添加以下代码

1. 不直接在写入数据库前执行,而是当 WordPress 输出文章内容的时候执行

//WordPress 文章中英文数字间自动添加空格(不写入数据库)

add_filter( 'the_content','fanly_post_content_autospace' );

function fanly_post_content_autospace( $data ) {

$data = preg_replace('/([\x{4e00}-\x{9fa5}]+)([A-Za-z0-9_]+)/u', '${1} ${2}', $data);

$data = preg_replace('/([A-Za-z0-9_]+)([\x{4e00}-\x{9fa5}]+)/u', '${1} ${2}', $data);

return $data;

}

2. 在 WordPress 后台编辑时执行,也就是当我们发布、更新、保存文章的时候就会自动执行,写入数据库的内容都将是自动添加了空格的,并且处理的对象为文章标题与文章内容。仅只对新发布的文章生效,之前发布的不生效

//WordPress 文章中英文数字间自动添加空格(写入数据库)

add_filter( 'wp_insert_post_data', 'fanly_post_data_autospace', 99, 2 );

function fanly_post_data_autospace( $data , $postarr ) {

$data['post_title'] = preg_replace('/([\x{4e00}-\x{9fa5}]+)([A-Za-z0-9_]+)/u', '${1} ${2}', $data['post_title']);

$data['post_title'] = preg_replace('/([A-Za-z0-9_]+)([\x{4e00}-\x{9fa5}]+)/u', '${1} ${2}', $data['post_title']);

$data['post_content'] = preg_replace('/([\x{4e00}-\x{9fa5}]+)([A-Za-z0-9_]+)/u', '${1} ${2}', $data['post_content']);

$data['post_content'] = preg_replace('/([A-Za-z0-9_]+)([\x{4e00}-\x{9fa5}]+)/u', '${1} ${2}', $data['post_content']);

return $data;

}

普通的Html文章

这里就需要祭出大杀器了,在WordPress当中也是可以直接使用的,就是pangu.js。使用也是十分方便,我们来看一下

pangu.spacingPage();

上面是最基础的操作,全局都进行自动加空格处理,还有另外一些操作

pangu.spacingElementById('main'); //在id=main的区域进行自动加空格处理

pangu.spacingElementByClassName('comment'); //在class=comment的区域进行自动加空格处理

pangu.spacingElementByTagName('p'); //在标签p里面进行自动加空格处理

对应的标签属性可以根据你的实际系统中的修改

MarkDown

还有一些文档系统,是使用MarkDown语法来生成的文章,比如docsify,我使用了docsify写了一个编程笔记的网站,把一些常用的信息记录一下,地址是https://notes.qq52o.me/

对于MarkDown的文档,其实pangu是不支持的,但是docsify中可以使用,因为他提供了钩子,可以在hook.doneEach解析MarkDown的时候进行调用,所以我们可以这样写

(function(u, c) {

var d = document, t = 'script', o = d.createElement(t),

s = d.getElementsByTagName(t)[0];

o.src = u;

if (c) { o.addEventListener('load', function(e) { c(e); }); }

s.parentNode.insertBefore(o, s);

})('//cdn.staticfile.org/pangu/4.0.7/pangu.min.js', function() {

pangu.spacingPage();

});

而且还是异步加载,岂不美滋滋?

任何个人或团体,未经允许禁止转载本文:《如何快速在文章中英文数字间自动添加空格》,谢谢合作!

html5中英文间自动空格,如何快速在文章中英文数字间自动添加空格相关推荐

  1. 将xml转为txt_HZ文章转短视频工具v1.0 快速将文章转为短视频 自动配音 配字幕 配图...

    制作这个工具的原因是之前那个"VidPress图文转视频AI工具"百度的接口被停用了,而且那个工具是基于百度的VidPress智能创作平台制作的,只能将百家号的文章生成短视频,这个 ...

  2. 作为文本内容空格的HTML标签,HTML.fromHtml在文本末尾添加空格?

    @Andro Selva的解释是正确的,没有太多可以做的.令人沮丧的是,API 24及其后的内容在调用中包含了标记 Spanned fromHtml (String source, int flags ...

  3. html5中英文间自动空格,WordPress 文章中英文数字间自动添加空格 代码

    摘要 今天分享给大家的这个"WordPress 文章中英文数字间自动添加空格"代码,明月感觉是目前网上分享的最简单.最稳定方法了,至少明月已经使用了近半个月了,非常的稳定,效果也很 ...

  4. word中快速消除两个汉字间的空格

    word中快速消除两个汉字间的空格(一定要先勾选下图中的"使用通配符(U)") 查找表达式:([一-﨩])([^s ]{1,})([一-﨩]) 解释:由3个表达式构成,每个表达式用 ...

  5. Thinkpad Access Connections实现快速的在各种网络间进行切换

    Thinkpad Access Connections快速的在各种网络间进行切换 因为工作的原因要经常在多个无线或有线之间切换,每次要切换到不同的固定IP地址的网络更是一种折磨,换一次就要从新输入一次 ...

  6. Word2019中Visio对象图片插入题注时自动删除标签与编号前的空格,编号后添加空格

    问题引入 撰写论文时为了修改方便,通常以插入题注和交叉引用的方式来给图片标号,这样修改图片和图号后可以方便.自动地更新. 然而,Word在插入题注上从03到13一直没有针对中国用户优化. 插入题注的标 ...

  7. Word插入题注优化(自动删除标签与编号前的空格,编号后添加空格)

    简介 最近在论文写作时发现,对图或者表右击进行插入题注时格式有点不正确,会在标签和编号之间多一个半角空格,而编号和题注内容之间又缺少一个空格,这也是Word目前对中文支持不太好的地方.我们常规的格式应 ...

  8. js去掉前后空格的函数_JavaScript 实现中英文空格

    写普通的文案时,我们有约定如何使用空格,但动态内容的处理有两种麻烦情况: 字符串插值,例如 {nameA}赞同了{nameB}的回答 文本有时表达式一侧,有时在表达式两侧,也有可能表达式连在了一起 各 ...

  9. html5 x5引擎,HTML5+CSS3从入门到精通之快速了解X5内核浏览器,video兼容

    本篇文章主要讲述HTML5+CSS3从入门到精通之快速了解X5内核浏览器,video兼容,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入. 使用vue-video-player在移 ...

最新文章

  1. matlab索引程序,Matlab索引到逻辑索引
  2. 【Netty】mmap 和 sendFile 零拷贝原理
  3. 汇编语言学习笔记-按指定的字体输出文本
  4. 一、策略模式(Strategy Pattern)
  5. Java打印出所有的水仙花数
  6. 搭建 zookeeper 和搭建dubbo监控中心
  7. window自带字体
  8. 张孝祥javascript视频教程
  9. VirtualBox的下载与安装
  10. 【Leetcode Medium】1318. Minimum Flips to Make a OR b Equal to c
  11. 芝诺数解|「十三」一菜一格,百菜百味——重庆川菜数据分析报告
  12. html5ppt预览插件,jQuery高性能跨浏览器全屏幻灯片特效插件
  13. 电影「哪吒之魔童降世」免 费 高 清 完 整 版 在 线 观 看
  14. jdk-8u181-windows-x64(JDK1.8)安装包
  15. ros手柄控制机器人小车(三)
  16. 高速缓冲存储器-cache
  17. 杰瑞·卡普兰:人工智能的本质是自动化 而非智能化
  18. js数据类型以及数组字符串常用方法
  19. Java—异或运算^的使用详解
  20. 计算机桌面任务栏过宽怎么处理,电脑任务栏变宽怎么还原

热门文章

  1. Linux查看末尾几行的命令
  2. 腾讯产品总监曹菲:如何克服职业焦虑
  3. 【软件测试】测试人,我们35岁焦虑怎样破?
  4. 计算机考研能换专业吗,考研调剂到材料专业,很后悔,还能转到计算机专业吗?...
  5. 信息系统项目管理师必背核心考点(六十)项目集管理
  6. Java进阶(一)面向对象进阶简介
  7. Tensorflow2.0---SSD网络原理及代码解析(二)-锚点框的生成
  8. 数学工具-desmos 图形曲线
  9. NRF52832 RNG
  10. 【Hardware】Mac外接DELL显示屏时报错“No DP Signal”无法连接