Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在重复图案后添加换行符_Javascript_Regex - Fatal编程技术网

Javascript 如何在重复图案后添加换行符

Javascript 如何在重复图案后添加换行符,javascript,regex,Javascript,Regex,假设有这样一个字符串: var content = "1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20"; 我想在每5点后添加 因此,结果应该是: 1.2.3.4.5.<br /> 6.7.8.9.10.<br /> 11.12.13.14.15.<br /> 16.17.18.19.20.<br /> 实际上,我想重构这段代码工作箱: var string=“1.2.3.4.5.6.7.8.

假设有这样一个字符串:

var content = "1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20";
我想在每5点后添加

因此,结果应该是:

1.2.3.4.5.<br />
6.7.8.9.10.<br />
11.12.13.14.15.<br />
16.17.18.19.20.<br />
实际上,我想重构这段代码

工作箱:

var string=“1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20;”;
string=string.replace(/(([^\.]+\.){5})/g,“$1
”);
适用于点之间任何类型和长度的字符

说明: 模式
/([^.]+){5})/g
可以按如下方式分解:

  • [^\.]
    -任何非点的字符
  • [^\.]+
    -任何非点的字符,一次或多次
  • [^\.]+\.
    -任何不是点的字符,一次或多次后跟点
  • ([^\.]+\.{5}
    -任何字符…点,出现五次
  • (([^\.]+\.{5})
    -任何…五次,捕捉这个(所有括号捕捉,除非被告知不捕捉,括号内的第一件事是?:)
    /g/
    标志使整个字符串匹配,即找到所有匹配项
  • “$1”
    表示第一组(或括号)的结果 因此,replace函数在字符串中查找模式的所有实例,并将它们替换为匹配本身+换行符(
    br

一旦你学会了正则表达式,生活就不一样了。

每个人都想要一些东西,但我们需要努力实现它。那么你尝试过什么呢?它的可能复制品看起来很相似,但事实并非如此。我们可以知道5点,然后再加上br,每5点加上一个正则表达式是的,它正在工作,非常感谢兄弟:),我想,如果有人不知道问题的答案,他不应该写毫无价值的词:)加上一个解释,希望也有帮助!是的,你太神奇了,真的是真的,15行代码现在是2行代码:D
regenerate:function(content,call){
    var data2;
    var brbr = content.replace(/[\u0250-\ue007]/g, '').match(/(\r\n)/g);
    if (brbr !== "") {
      data2 = content.replace(/[\u0250-\ue007]/g, '').replace(/(\r\n)/gm, "<br><br>");
    } else {
      data2 = content.replace(/[\u0250-\ue007]/g, '');
    }
    var dataArr = data2.split(".");

    for (var y = 10; y < dataArr.length - 10; y += 10) {
      var dataArrSpecific1 = dataArr[y] + ".";
      var dataArrSpecific2 = dataArr[y] + ".<br>";
      var dataArrSpecificBosluk = dataArr[y + 1];
      var data3 = data2.replace(new RegExp(dataArrSpecific1.replace(/[\u0250-\ue007]/g, ''), "g"), "" + dataArrSpecific2.replace(/[\u0250-\ue007]/g, '') + "");
      data3 = data3.replace(new RegExp(dataArrSpecificBosluk.replace(/[\u0250-\ue007]/g, ''), "g"), "&nbsp;&nbsp;&nbsp;&nbsp;" + dataArrSpecificBosluk.replace(/[\u0250-\ue007]/g, '') + "");
      data2 = data3;
    }
    call(data2.replace(/[\u0250-\ue007]/g, ''));
  }
var string = "1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20." ;   

string = string.replace(/(([^\.]+\.){5})/g, "$1<br/>");