Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.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_Jquery_Regex - Fatal编程技术网

Javascript 是否用计数器升序替换所有特定字符?

Javascript 是否用计数器升序替换所有特定字符?,javascript,jquery,regex,Javascript,Jquery,Regex,我有这样一个字符串: var str = "some text is here - first case - second case - third case some text is here"; .replace (/(^\s*-\s+)/gm, "{A dynamic number which is ascending}. ") 现在我需要这个输出: var newstr = "some t

我有这样一个字符串:

var str = "some text is here
            - first case
            - second case 
            - third case
           some text is here";
.replace (/(^\s*-\s+)/gm, "{A dynamic number which is ascending}. ")
现在我需要这个输出:

var newstr = "some text is here
                1. first case
                2. second case 
                3. third case
               some text is here";

我所能做的就是。现在我需要用一个动态数字替换
$1
。。。可能吗

大概是这样的:

var str = "some text is here
            - first case
            - second case 
            - third case
           some text is here";
.replace (/(^\s*-\s+)/gm, "{A dynamic number which is ascending}. ")
您可以与回调和计数器一起使用

使用ES2015:

var str=`这里有一些文本
-第一例
-第二种情况
-第三种情况
这里有一些文字`;
var计数器=1;
str=str.replace(/^\s*-/gm,()=>counter++');
console.log(str);
文件。写(str);//演示用途
您可以与回调和计数器一起使用

使用ES2015:

var str=`这里有一些文本
-第一例
-第二种情况
-第三种情况
这里有一些文字`;
var计数器=1;
str=str.replace(/^\s*-/gm,()=>counter++');
console.log(str);
文件。写(str);//演示目的
您可以使用此功能

var i=1;
while(str.indexOf("-")!=-1)
    str=str.replace(/-/,i++ +".")
你可以用这个

var i=1;
while(str.indexOf("-")!=-1)
    str=str.replace(/-/,i++ +".")

非常好的答案++++疯狂的打字速度:)这么多代码和演示只需2分钟+1我还在等待注释
;-)的答案非常好的答案++++疯狂的打字速度:)这么多的代码和演示只需2分钟+1我还在等待评论的答案
;-)