写本文的目的是今天恰好有一个之前做SEO的同事问我怎样把一篇文章中多个连续的br标签替换成两个连续的br标签,这里就牵涉到SEO层面的问题了。

在做SEO优化的时候,其中有一个需要注意的地方就是尽量减少文章中br标签强制换行的使用,如果换行请尽量使用p标签,p标签严格意义上来说就是段落标签,是专门用在文章的段落中的。br标签对SEO不够友好,我想很大程度上还是搜索引擎想要写代码的人的尽量把代码写的规范,什么时候该用什么标签突出强调,什么时候该用什么标签换行,什么时候该用什么标签包裹标题等等。当然如果你用编辑器发布文章的话,你敲了回车换行,那么编辑器一般会自动给你的段落加上p标签的。

那么如果是文章中的换行不是p标签,而是用了多个连续的br标签呢?这样对SEO不够友好,就需要减少br标签的使用或不用。但既然我之前的同事向我问这个问题了,说他写的文章中的有些内容是采集别人的(做过SEO的人都知道伪原创吧),里边会有连续很多个br标签,想通过js把它们替换成两个连续的br标签,于是我就去实际写了一把js帮他完成了这个功能。

代码如下:

var str = "一个新的字符<br><br><br><br><br><br>串,该字符串值包含<br><br><br>那么该方法返回的就是一个空串<br><br>其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。";
var demo = str.replace(/(<br>){2,}/g, "<br><br>");
console.log(demo );

效果如下图:

很好,很不错!

至于代码中的实现方法,replace()方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串,并返回一个新的字符串。{2,}这个正则表达式的意思是至少匹配两次,g代表全局匹配。

js将一篇文章中多个连续的<br>标签替换成两个连续的<br>标签的更多相关文章

  1. N个任务掌握java系列之统计一篇文章中单词出现的次数

    问题:统计一篇文章中单词出现的次数 思路: (1)将文章(一个字符串存储)按空格进行拆分(split)后,存储到一个字符串(单词)数组中. (2)定义一个Map,key是字符串类型,保存单词:valu ...

  2. sql server的sql 语句中的列名包含[]时候,把]替换成]]就可以

    sql server的sql 语句中的列名包含[]时候,把]替换成]]就可以eg: create table p.e_LOG_WebServer ( [BSCFlg] int, ), ) ); sel ...

  3. js估算一篇文章的阅读时长

    每天早上上班在地铁里我都有看技术类文章以及实时新闻的习惯,偶尔会看到有些文章的开始部分会提醒我们这篇文章大概的阅读时长,我就在想这是怎么实现的,具体到前端开发中,又是如何实现的.今天在浏览Segmen ...

  4. JavaScript中将对象数组中的某个属性值,批量替换成另一个数值

    原文链接 https://segmentfault.com/q/1010000010352622 希望将下列数组中的sh替换成沪,sz替换成深 var stooges = [ {label:1,val ...

  5. 一篇文章有若干行,以空行作为输入结束的条件。统计一篇文章中单词the(不管大小写,单词the是由空格隔开的)的个数。

    #include <iostream>using namespace std; int k = 0;int n = 0;int main() { char c; char a[1000]; ...

  6. Java统计一篇文章中每个字符出现的个数

    大家可以参考下面代码,有什么疑问请留言... import java.io.BufferedReader; import java.io.FileInputStream; import java.io ...

  7. jieba:统计一篇文章中词语数

    jieba官方文档 1.jieba分词的四种模式 精确模式.全模式.搜索引擎模式.paddle模式 精确模式:把文本精确的切分开,不存在冗余单词,适合文本分析: 全模式:把文本中所有可能的词语都扫描出 ...

  8. 解决前面有一篇文章中'flashplayer.so为什么要设置777权限的'问题 的 思考了

    列出某个目录下的所有内容? ls -A, -A等同于-a, 即是-all, 只是-A 不显示.和.. ll ls 某个目录, 如果它下面没有任何东西, 那么 就没有输出! 同时, ll某个目录, 不会 ...

  9. 针对上一篇文章中的代码,想出的重构方案(python实现)

    #!/usr/bin/env python class Processor: def __init__(self, processor): self.processor = processor def ...

随机推荐

  1. vue 前端框架 (二) 表格增加搜索

    本章知识点 归纳: 1.定义全局过滤器 以及 私有过滤器 2.定义全局指令 以及 定义私有指令 3.定义键盘修饰符 4.v-for 的函数引入 5.字符串的incluede 方法,.toString( ...

  2. Python自动化中的元素定位xpath(二)

    1.Xpath元素定位 1)ele = b.find_element_by_xpath(‘/html/body/from/input[1]’) 2)Ele = b.find_element_by_xp ...

  3. Spring Cloud 2-Zuul 网关服务(六)

    Spring Cloud  Zuul  1.pom.xml 2.application.yml Application.java 1.pom.xml <!-- zuul 网关服务 --> ...

  4. python input()键盘输入8583报文带有\x单反斜杠自动转义问题解决办法

    用input()输入的字符串是8385报文比如:\x30\x30\x30\x30...,但是输入后,代码把8583报文字符串中多加了一个\,类似\\x30. 但是我把input()代码注释掉,把858 ...

  5. 帆软报表(finereport)实现自动滚屏效果

    例如Demo:IOS平台年度数据报表. 展示内容丰富,一个页面中存在多个图表.内容,超出了浏览器窗口的大小导致内容展示不全. 为了能够预览这个报表的全部内容,可以使用JS滚屏效果来实现. 操作步骤: ...

  6. kali linux 网络配置

    /etc/init.d/networking restart service newworking restart ifdown eth0 ifup eth0 ifconfig down eth0 i ...

  7. mongodb基本的配置和使用

    一.连接配置,使用自动配置方式,在applicaiton.properties中配置连接信息即可 spring.data.mongodb.host=127.0.0.1 //连接地址 spring.da ...

  8. MySQL查看所有连接的客户端ip

    ) AS host_name,state,count(*) FROM information_schema.processlist GROUP BY state,host_name;

  9. emacs Can't guess python-indent-offset, using defaults: 4

    首先,这只是一个提示,Emacs 在打开python 文件时,如果是个空文件,会有此提示. 在python.el文件配置中,有如下代码: Python.el (defcustom python-ind ...

  10. 为什么阿里巴巴禁止在 foreach 循环里进行元素的 remove/add 操作--java.util.ConcurrentModificationException

    摘要 foreach循环(Foreach loop)是计算机编程语言中的一种控制流程语句,通常用来循环遍历数组或集合中的元素. 在阿里巴巴Java开发手册中,有这样一条规定: 但是手册中并没有给出具体 ...