我想对包含sq-sq.的字符串进行替换,我正在考虑执行以下操作:

var imgSrc = event.dataTransfer.getData('Text');
    imgSrc = imgSrc.replace('sq-', 'mt-') || imgSrc.replace('sq.', 'mt.');


关于如何使它起作用的任何想法?

最佳答案

你可以用一个正则表达式来做...

imgSrc = imgSrc.replace(/sq([.-])/g, 'mt$1');


jsFiddle

字符类将匹配文字.(因为它在字符类中失去了特殊的含义)和文字-(看起来不像范围,因此也没有特殊含义)。

匹配项放置在捕获组1中,该组在用$1替换时被引用。

Performance test between one regex and two

关于javascript - Javascript取代“sq-”或“sq”。,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11443059/

10-16 00:11