尝试替换文本字符串是带有通配符的notepad ++

时间:2014-08-26 19:06:33

标签: regex notepad++

我正在尝试使用notepad ++替换kicad程序中的文本。我在使用外卡时遇到问题。

我想找到的这个字符串与此类似......

(fp_text参考J2(at -8.30084 1.4004 270)

J2是一张外卡,但不会被更改,它可以是2到5个字符的长度)

-8.30084可以是我想要更改为零的任何数字

1.4004可以是我想要更改为零的任何数字

无论数字是多少,

270都不会改变。

最后,我想要字符串

(fp_text参考J2(0 0 270)

1 个答案:

答案 0 :(得分:0)

如果正确理解你正在寻找匹配它的正则表达式并用0替换第一个和第二个(但不是第三个)数字。不知道你拥有的令牌的有效字符是什么? 39;假设它是任何非空格字符。

您可以在替换字符串中引用capture group。因此,您可以捕获要保留的部分。 (在下面的示例中,我还捕获了字符串的其他未知部分,但这并不是必需的。

正则表达式应该是这样的:

(\S)\s\(at ([-+]?\d*\.?\d+) ([-+]?\d*\.?\d+) ([-+]?\d*\.?\d+)\)

你的替代品将是:

\1 (at 0 0 \4)