Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.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,我正在尝试将所有[space]替换为-介于\ut和tt之间的- 我可以用下面的正则表达式替换整个字符串中的空格 var str=document.getElementById('tt').value; 你可以积极地回顾过去,展望未来 var str='这是一个长文本,我想在其中替换一些字符之间的一些文本'; 你可以积极地回顾过去,展望未来 var str='这是一个长文本,我想在其中替换一些字符之间的一些文本'; str=str.replace(/(?不带lookarounds,所有浏览器

我正在尝试将所有
[space]
替换为
-
介于
\ut
tt
之间的
-

我可以用下面的正则表达式替换整个字符串中的空格

var str=document.getElementById('tt').value;

你可以积极地回顾过去,展望未来

var str='这是一个长文本,我想在其中替换一些字符之间的一些文本';

你可以积极地回顾过去,展望未来

var str='这是一个长文本,我想在其中替换一些字符之间的一些文本';

str=str.replace(/(?不带lookarounds,所有浏览器还不完全支持lookarounds)您也可以仅在选定的匹配项上使用回调函数进行替换

str = str.replace(/__tt.*?tt__/g, m => m.replace(/ /g, "-"));
var str='这是一个长文本,我想在其中替换一些字符之间的一些文本';
str=str.replace(//g,“-”);

console.log(str);
不带lookarounds,所有浏览器还不完全支持lookarounds,您还可以使用回调函数替换选定的匹配项

str = str.replace(/__tt.*?tt__/g, m => m.replace(/ /g, "-"));
var str='这是一个长文本,我想在其中替换一些字符之间的一些文本';
str=str.replace(//g,“-”);
console.log(str);
可以试试

let str='这是一个长文本,我想在其中替换一些字符之间的一些文本';
str=str.replace(//g,“-”);
console.log(str);
可以试试

let str='这是一个长文本,我想在其中替换一些字符之间的一些文本';
str=str.replace(//g,“-”);

console.log(str);
Try
str=str.replace(/\uu tt.*?tt\ug,(m)=>m.replace(//g,“-”);
@Thefourthbird真棒,它成功了!!。你能把它作为答案发布吗?Try
str=str.replace(/\uu tt.*?tt\ug,(m)=>m.replace(//g,“-”)
@Thefourthbird真棒,它成功了!!。你能把它作为答案发布吗?能用其他字符代替空格吗?谢谢。能用多行字符串代替这个解决方案吗?能用其他字符代替空格吗?谢谢。能用多行字符串代替这个解决方案吗是否可以替换其他字符而不是空格?这取决于用例。如果要替换当前示例的其他字符,可以将匹配空格的字符替换为要匹配的字符,例如char
a
like
m.replace(/a/g,“-”)
谢谢。这个解决方案可以在多行字符串中工作吗?
@Pugazh-Ah我忘记了tt部分,比如
str=str.replace(//uuuuuu[^]*?uuuuuu/g,m=>m.replace(//g,“-”);
@Pugazh-Ah;
是否可以替换其他字符而不是空格?这取决于用例。如果要替换当前示例中的其他字符,可以将匹配空格的字符替换为要匹配的字符,例如char
a
like
m.replace(/a/g,“-”)
谢谢。这个解决方案可以在多行字符串中工作吗?如果你想对新行进行点匹配,请使用
str=str.replace(//uuuuuu[^]*?uuuu/g,m=>m.replace(//g,“-”);
@Pugazh Ah我忘记了tt部分,比如
str=str.replace(//uuuuu tt[^]*?tt\uuu/g,m=>m.replace(///g,“-”);