当前位置: 首页 > news >正文

用html+javascript打造公文一键排版系统12:删除附件说明中“附件:”里的空格

如果我们在输入附件说明时在“附件:”之间加入空格,那么排版时就要删除这些空格。

因为string对象replace()支持正则表达式,于是考虑用replace()来完成。

写了一段只有一个多余空格的代码来测试:

<!DOCTYPE HTML>
<HTML>
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name="Author" content="PurpleEndurer"><title>公文一键排版系统</title>
</head>
<body>
<script>
var s = ["附 件:河池市××关于××××××××××××××××××××××××××××××××××××××××××××××××××的通知","附件:河池市××关于××的通知","附件:河池市××关于××的通知。"];for (var i=0; i < s.length; i++)  
{document.write(s[i].replace(/附\s件:/,'附件:')+"<br>");  }
</script>
</body>
</html>

运行结果如下:

附件:河池市××关于××××××××××××××××××××××××××××××××××××××××××××××××××的通知
附件:河池市××关于××的通知
附件:河池市××关于××的通知。

增加了包括多个多余空格的测试样本,同时修改正则表达式,分别用三种方法来检测:

<!DOCTYPE HTML>
<HTML>
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name="Author" content="PurpleEndurer"><title>公文一键排版系统</title>
</head>
<body>
<script>
var s = ["附 件:河池市××关于××××××××××××××××××××××××××××××××××××××××××××××××××的通知","附   件  : 河池市×   ×关于××××××××××××××××××××××××××××××××××××××××××××××××××的通知",         "附件:河池市××关于××的通知","附件:河池市××关于××的通知。"];document.write("<br>方法1.----------<br>");  for (var i=0; i < s.length; i++)  
{//document.write(s[i].replace(/附\s件:/,'附件:')+"<br>"); document.write(s[i].replace(/附\s*件\s*(:|:)\s*/g,'附件:'),"<br>");  
}document.write("<br>方法2.----------<br>");  for (var i=0; i < s.length; i++)  
{document.write(s[i].replace(/\s/g,''),"<br>");
}document.write("<br>方法3.----------<br>");  for (var i=0; i < s.length; i++)  
{document.write((s[i].substring(0,s[i].indexOf(':')+1)).replace(/\s/g,''),s[i].substring(s[i].indexOf(':')+1),"<br>");
}</script>
</body>
</html>

运行结果如下:


方法1.----------
附件:河池市××关于××××××××××××××××××××××××××××××××××××××××××××××××××的通知
附件:河池市× ×关于××××××××××××××××××××××××××××××××××××××××××××××××××的通知
附件:河池市××关于××的通知
附件:河池市××关于××的通知。

方法2.----------
附件:河池市××关于××××××××××××××××××××××××××××××××××××××××××××××××××的通知
附件:河池市××关于××××××××××××××××××××××××××××××××××××××××××××××××××的通知
附件:河池市××关于××的通知
附件:河池市××关于××的通知。

方法3.----------
附件:河池市××关于××××××××××××××××××××××××××××××××××××××××××××××××××的通知
附件: 河池市× ×关于××××××××××××××××××××××××××××××××××××××××××××××××××的通知
附件:河池市××关于××的通知
附件:河池市××关于××的通知。

方法1正是我们想要的效果。

方法2把附件说明中的所有空格都删除了,扩大了删除范围,不好。

方法3没有删除接着冒号后面的空格。

附:

replace()的语法为:

string.replace(searchvalue,newvalue)

可以使用正则表达式来强化replace()的功能。

JavaScript默认的replace方法,只执行单次匹配。

要实现全局替换:可以加g标识( global) 执行反复检索。

要实现忽略大小写匹配:加i标识( ignore) 执行忽略大小写检索。

还有m标识,表示多行检索。

http://www.lryc.cn/news/108229.html

相关文章:

  • 容器技术:Docker搭建(通俗易懂)
  • Day 16 C++ 友元(friend)
  • 步进电机1
  • PHP-简单项目引起的大麻烦--【白嫖项目】
  • Excel如何把两列互换
  • Java基础面试题2
  • Typescript 第八章 异步编程,并行和并发(JavaScript事件循环,异步流,多线程类型安全)
  • c++ 打印当前时间(精确到毫秒)
  • mapstruct 错误 java.lang.NoSuchMethodError: Ljava/lang/Double 错误
  • SpringBoot+AOP+Redission实战分布式锁
  • Linux系统---进程概念
  • ELK常用语法和线上问题排查
  • session-cookies 三个缓存 localStorage、sessionStorage、Cookies。
  • LA@行列式性质
  • 【java安全】原生反序列化利用链JDK7u21
  • [SQL智慧航行者] - SQL刷题规划
  • 概率论与数理统计:第一章:随机事件及其概率
  • elementUi重置Select选择器样式、option、deep、vue3、plus
  • jar命令的安装与使用
  • windows系统多线程多进程下应用函数CloseHandle的一些细节
  • 微服务——elasticsearch
  • paddlenlp:社交网络中多模态虚假媒体内容核查
  • Centos系统有哪些特点呢
  • 一文学会git常用命令和使用指南
  • [PyTorch][chapter 46][LSTM -1]
  • 寄存器详解(二)
  • Java AIO
  • java集合总结
  • list交并补差集合
  • 【微信小程序】父组件修改子组件数据或调用子组件方法