Sublime,查找和替换不同的数字

时间:2014-03-31 16:36:22

标签: regex replace sublimetext2 sublimetext

我正在尝试查找并替换以下所有实例:

font-size: pem(18)

但问题是它们的数量都不同。我不是一个正则表达式的专家,我已经研究了一些没有运气的方法,因为我真的不知道我在寻找什么来解决这个问题。

我知道Sublime中存在正则表达式功能,但是当我想到正则表达式时,我正在考虑使用javascript或jquery心态,而不是纯正的正则表达式,因为我在那里缺乏经验。

1 个答案:

答案 0 :(得分:4)

如果您开始学习RegEx,这很简单:

font-size: pem\(\d+?\)

首先,如果您尝试匹配该确切字符,请转义所有RegEx元字符。在这种情况下,他们是"("和")"。 \d+匹配一个或多个数字,即。 4,14,144等。如果你想获得更高级的功能并将整数值限制为1到19之间的任何值,你可以将RegEx修改为:

font-size: pem\((?:[1-9]|1[0-9])\)

此处,|是标准"或"运营商。 \d只是[0-9]的简写,但我在这里使用了[0-9]以提高可读性。 (?: ... )表示非捕获组,以便关闭")"匹配单个" 1-9"价值也是如此。


现在,如果您在更改所有整数值之后,可以执行查找和替换,如下所示:

查找

(?<=font-size: pem\()(?:[1-9]|1[0-9])(?=\))

替换

12

然后所有1到19之间的pem值将变为12。