问题: 字符串转数组,但是分割点在‘.’ ,需要保留每个后缀的 ‘.’ + 类型

解决:

let videoType = '.avi.rmvb.rm.asf.divx.mpg.mpeg.mpe.wmv.mp4.mkv.vob'

videoType.replace(/[.]/g, '\,.') // 替换掉所有的. 为 ,.

videoType.split(',') // 根据,分割 得到最终数组

进阶: 上述虽然实现但是第一个一定会分离出一个空数组,可以封装为一个方法

 function getArrayFromString (str, substr) {
let newStr = str.replace(/[.\\[\]{}()|^$?*+]/g, '\,' + substr)
console.log(newStr)
let newArray = newStr.split(',')
return newArray.filter(function (n) { return n })
}

弊端: 统一替换了所有特殊字符,所有字符串内的特殊字符应该由适当的限制,弊端很大,聊胜于无。

关于 js中replace 特殊符号 ‘.’ 的问题的更多相关文章

  1. js中replace用法

    js中replace的用法 replace方法的语法是:stringObj.replace(rgExp, replaceText) 其中stringObj是字符串(string),reExp可以是正则 ...

  2. js中的特殊符号含义

    一. !! js中的!! var o ={flag:4}; var test = !!o.flag; console.log(test);  // true 二.~~,<< (~~(Mat ...

  3. js中replace的回调函数使用。

    这只是一个小问题,但是之前并没有发现.这个问题就是replace的第二个函数是支持回调函数的. var ext = new RegExp('f','g'); 1.str.replace(ext ,1) ...

  4. js中replace的用法【转】

    1.replace方法的语法是:stringObj.replace(rgExp, replaceText) 其中stringObj是字符串(string),reExp可以是正则表达式对象(RegExp ...

  5. js中replace的正则替换

    temp: video":"\t<ul class=\"g-list tabview-cont on\">\t\r\n\t\t<li clas ...

  6. JS中replace()用法举例

    语法: string.replace(regexp,replacement) 参数: regexp:声明了要替换的模式的RegExp对象.如果该参数是一个字符串,则将它作为要检索的直接量文本模式,而不 ...

  7. JS中replace替换全部的正确应用

    一般使用 var str = "test-test-test"; str = "test-test-test".replace("test" ...

  8. js中replace的用法(两种常用举例,还有好多用法不一一列举)

    1.替换特定字符 <html><body> <script type="text/javascript"> var str="Visi ...

  9. js中replace的用法

    replace方法的语法是:stringObj.replace(rgExp, replaceText) 其中stringObj是字符串(string),reExp可以是正则表达式对象(RegExp)也 ...

随机推荐

  1. tensorflow从入门到放弃-0

    刚接触tensorflow一周,感觉还是有点难度的.遇到这么个问题 failed call to cuInit: CUDA_ERROR_NO_DEVICE: no CUDA-capable devic ...

  2. W3CSchool闯关笔记(JQuery)

    <script> $(document).ready(function(){ }); </script> <!-- Only change code above this ...

  3. SVG初尝试(二)

    基本图形 rect(矩形).circle.ellipse(椭圆).line(直线).polyline(折线).polygon(多边形).path(可以绘制任意图形) rect x,y定义矩形坐标,矩形 ...

  4. LoadRunner脚本准备

    脚本录制1.启动LoadRunner2.打开VuGen在LoadRunner Launcher窗格中,单击创建/编辑脚本3.创建一个空白Web脚本在“新建虚拟用户”对话框里选择新建脚本的协议一般选择W ...

  5. selenium打开Chrome浏览器并最大化

    #打开Chrome浏览器并放大 from selenium import webdriver def BrowserOpen(): driver = webdriver.Chrome(); drive ...

  6. 关于Integer比较问题

    public class Test { public static void main(String[] args) { Integer a=127; Integer b=127; System.ou ...

  7. Django 2.0 与 Django1.0在内部方法上的差异

    models.Customer.tags.rel 方法 对于Django1 可以通过 models.Customer.tags.to.model.objects.all() 获取一个model下的Ma ...

  8. 奇葩最小生成树--->走廊泼水节(tyvj1391)

    题目描述 话说,中中带领的OIER们打算举行一次冬季泼水节,当然这是要秘密进行的,绝对不可以让中中知道.不过中中可是老江湖了,当然很快就发现了我们的小阴谋,于是他准备好水枪迫不及待的想要加入我们了. ...

  9. buaaoo_second_improvement

    你不优化,我不优化,那大家就都是满分啦 (一)写在最前 电梯问题由于和实际关联比较紧密,所以实际上可以操作的空间比较多. 但第二单元的电梯,需要实现捎带:第三单元的电梯,需要实现楼层限制.人数限制.三 ...

  10. javascript中的浅拷贝ShallowCopy与深拷贝DeepCopy

    拷贝,在js中,分为浅拷贝和深拷贝.这两者是如何区分的呢?又是如何实现的呢? 深浅拷贝的区分 首先说下,在js中,分为基础数据类型和复杂数据类型, 基础数据类型:Undefined.Null.Bool ...