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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.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替换HTML字符串中的字符_Javascript_Html_Draftjs - Fatal编程技术网

如何用javascript替换HTML字符串中的字符

如何用javascript替换HTML字符串中的字符,javascript,html,draftjs,Javascript,Html,Draftjs,我正在使用sanitize html为draftJS编辑器清除粘贴的文本 假设结果可能是这样的文本字符串 总统说“给这个人一笔钱”,我同意 我想可以用两个正则表达式来实现这一点: var inputString=` 总统说“给这个人一笔钱”,我同意 ` ,startingQuoteRE=/“/g ,endingQuoteRE=/“/g ,outputString=“” ; outputString=inputString.replace(startingQuoteRE,“«”); outpu

我正在使用
sanitize html
draftJS
编辑器清除粘贴的文本

假设结果可能是这样的文本字符串


总统说“给这个人一笔钱”,我同意

我想可以用两个正则表达式来实现这一点:

var inputString=`
总统说“给这个人一笔钱”,我同意
`
,startingQuoteRE=/“/g
,endingQuoteRE=/“/g
,outputString=“”
;
outputString=inputString.replace(startingQuoteRE,“«”);
outputString=outputString.replace(endingQuoteRE,»);
//或者用链子锁起来。替换
//outputString=inputString.replace(开始引用“«”).replace(结束引用“»”);

日志(outputString)我想您可以使用两个正则表达式来实现这一点:

var inputString=`
总统说“给这个人一笔钱”,我同意
`
,startingQuoteRE=/“/g
,endingQuoteRE=/“/g
,outputString=“”
;
outputString=inputString.replace(startingQuoteRE,“«”);
outputString=outputString.replace(endingQuoteRE,»);
//或者用链子锁起来。替换
//outputString=inputString.replace(开始引用“«”).replace(结束引用“»”);
日志(outputString)
  • 创建一个
    replaceAll
    函数。因为
    replace
    函数将只替换第一次出现的内容

    String.prototype.replaceAll = function(string, replace) {
    return this.split(string).join(replace);
    };
    
  • 像这样调用函数

    var str = '<h1 class="title">\
    President said "<b>Give this man a money</b>" and i agree\
    </h1>';
    var result = str.replaceAll('"','\'');
    console.log(result);
    
    var-str='\
    总统说“给这个人一笔钱”,我同意\
    ';
    var result=str.replaceAll(“”,“\”);
    控制台日志(结果);
    
  • 创建一个
    replaceAll
    函数。因为
    replace
    函数将只替换第一次出现的内容

    String.prototype.replaceAll = function(string, replace) {
    return this.split(string).join(replace);
    };
    
  • 像这样调用函数

    var str = '<h1 class="title">\
    President said "<b>Give this man a money</b>" and i agree\
    </h1>';
    var result = str.replaceAll('"','\'');
    console.log(result);
    
    var-str='\
    总统说“给这个人一笔钱”,我同意\
    ';
    var result=str.replaceAll(“”,“\”);
    控制台日志(结果);
    

  • 不使用正则表达式解析HTML不是有什么问题吗?@Eldy是的,不建议使用正则表达式解析HTML。但是这里我们没有解析任何HTML,只是做了一些字符串替换。没有关于不使用正则表达式解析HTML的内容吗?@Eldy是的,不建议使用正则表达式解析HTML。但在这里,我们并没有解析任何HTML,只是做了一些字符串替换。