2016-07-27 92 views
-2

是否有可能在一个正则表达式中用"that""This"替换"this""That"正则表达式替换,保留大小写

允许Perl扩展和其他特殊技巧。

编辑:如果替换以相同的字母开头,这太容易了。如何servernodeServerNode

假设我只关心第一个字母,使用Perl,我想出了:

s/(s)erver/($1 eq uc $1 ? "N" : "n") . "ode"/ie 
+0

我已经尝试过's/this/that/i',但它将两者都转换为'that'当然。 –

+0

正则表达式不是用来替换任何东西。它用于搜索。 – xenteros

+0

好吧,但是大多数语言的正则表达式系统包含一个替换功能,使用'$ 1','$ 2'等。 –

回答

0

呀,你能做到这一点,如:

var z = "This this"; 
z.replace(/([Tt])his/g, '$1hat'); 

结果将是:That that