Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.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 img = "<img class='messages-emoji' src='js/message/emoji/thumbsup.gif'>" ; 为此: 微笑 以下是我尝试过的: var new = img.replace("<img class='messages-emoji' src='js/message/emoji/thumbsup.gif'>", "(smile)"); 我需要在正则表达式Javascript中替换它 我认为

我需要替换此字符串:

var img = "<img class='messages-emoji' src='js/message/emoji/thumbsup.gif'>" ;
为此:

微笑

以下是我尝试过的:

var new = img.replace("<img class='messages-emoji' src='js/message/emoji/thumbsup.gif'>", "(smile)");
我需要在正则表达式Javascript中替换它 我认为问题在于您使用保留字new作为变量名。我建议换一种不同的方式:

var newImg = img.replace("<img class='messages-emoji' src='js/message/emoji/thumbsup.gif'>", "(smile)");

我无法使用此标准替换代码,因为它包含转义字符。等等什么?什么转义字符?我看到的唯一问题是您尝试使用new作为变量名。另外,请不要在标题中添加标签。为什么需要正则表达式?源字符串中有不是常量的部分吗?你有什么想法?这个网站:提供了很多关于正则表达式的信息。它更像是一个api,而不是一个教程,但是你想知道的任何东西都在里面。这取决于你。如果替换的目标是常量字符串,则不需要正则表达式。但是,如果您希望用其他内容替换字符串中的所有数字,那么正则表达式就是一种方法。如何在正则表达式中编写此内容?更新了我的答案以供使用regex@Earthling没问题。我已经更新了我的答案,解释了为什么人们总是试图劝阻你不要使用正则表达式。我很感激你通过示例来学习如何使用语言功能,但是如果这是一个现实问题,那么在这个例子中有比regex更好的解决方案。经过我刚才的一点研究,我知道regex不是解决这类问题的“go-to”解决方案。无论如何,谢谢你的回答和详细信息。帮了很多忙!谢谢你,伙计!
var img = "<img class='messages-emoji' src='js/message/emoji/thumbsup.gif'>";
var regex = /<img class='messages-emoji' src='js\/message\/emoji\/thumbsup.gif'>/;

var newImg = img.replace(regex, "(smile)");