notepad ++如何交换两个if和then语句

时间:2017-07-30 14:45:02

标签: text expression notepad++ swap

所以我有一些改革代码(1000行),我想从这个

if $one=0 and $two=32 then $dist=1
if $one=0 and $two=15 then $dist=2
if $one=0 and $two=19 then $dist=3

到这个

if $one=0 and $dist=1 then $two=32
if $one=0 and $dist=2 then $two=15
if $one=0 and $dist=3 then $two=19

用几句话将$ 2及其值换成$ dist及其值。

是否可以使用notepad ++的正则表达式?欢呼声

1 个答案:

答案 0 :(得分:1)

  • 控制 + ħ
  • 找到:(\$two=\d+)( then )(\$dist=\d+)
  • 替换为:$3$2$1
  • 全部替换

<强>解释

(\$two=\d+)     : group 1, contains "$two=1 or more digits"
(\s+then\s+)    : group 2, literally "then" surrounded by spaces
(\$dist=\d+)    : group 3, contains "$dist=1 or more digits"

\$必须转义,因为它是正则表达式中的特殊字符。

<强>替换

$3$2$1   : group 3 group 2 group 1

给定示例的结果:

if $one=0 and $dist=1 then $two=32
if $one=0 and $dist=2 then $two=15
if $one=0 and $dist=3 then $two=19