Javascript JS中的多个字符替换-如何在同一函数中停止对先前结果的替换

Javascript JS中的多个字符替换-如何在同一函数中停止对先前结果的替换,javascript,Javascript,我有一个(可能非常不干净)脚本,我打算将放入文本字段的字母转换为带有相应路径的html图像标记。我知道可能有更简单的方法可以做到这一点,比如PHP,但是我将它作为一个实验来进一步熟悉JS/Jquery。我克服了一些障碍,取得了现在的成就,因为这对我来说是新的起点 在某些情况下,字母将有多个与之关联的图像,这些图像将被随机选择,因此包含了一些行来执行此操作。这些都很好,但是,问题是代码部分用组成图像标记的文本和变量替换了文本字段中的字母。虽然它们可以单独工作,但当我想要转换多个字母时,“替换”会覆

我有一个(可能非常不干净)脚本,我打算将放入文本字段的字母转换为带有相应路径的html图像标记。我知道可能有更简单的方法可以做到这一点,比如PHP,但是我将它作为一个实验来进一步熟悉JS/Jquery。我克服了一些障碍,取得了现在的成就,因为这对我来说是新的起点

在某些情况下,字母将有多个与之关联的图像,这些图像将被随机选择,因此包含了一些行来执行此操作。这些都很好,但是,问题是代码部分用组成图像标记的文本和变量替换了文本字段中的字母。虽然它们可以单独工作,但当我想要转换多个字母时,“替换”会覆盖先前生成的图像标记中该字母的实例。我能阻止这一切吗?我试图改变脚本出现的时间点,但整个过程似乎有些脆弱,无法创建可行的解决方案

有关守则:

        // replace all instances within variable to generate thumbs
        final_result = result.replace(/a/g, str_start+chosen_folder+"a"+random_variation+str_end)
                             .replace(/e/g, str_start+chosen_folder+"e"+random_variation+str_end);  
JS小提琴在这里:


非常感谢

仅进行一次更换:

final_result = result.replace(/a|e/g, str_start+chosen_folder+"$&"+random_variation+str_end);

搞定了,伙计,我花了很多时间试着把它换成一个新的。谢谢啊,我有一点问题-,在一些字母上只有一个变体,所以我需要能够指定哪些字母是随机变量。我想这就是我最终得到原始代码的原因。。有什么想法吗?你仍然可以动态地构建正则表达式。