任何字符替换增量数

时间:2014-04-23 23:35:26

标签: regex notepad++

enter image description here

列不对齐时是否可能?

var[x];
var[x];
var[x];
var[x];

...

替换

var[0];
var[1];
var[2];
var[3];

2 个答案:

答案 0 :(得分:1)

Sezer,这是在Notepad ++中轻松实现的方法

  1. 在“替换”标签中,确保选中"正则表达式"左下角的方框
  2. 搜索:(^\w+\[(\d+)\]=[^;]+;\w+\[)[^]]+
  3. 替换:\1\2$1$2(根据您的区域设置,您可能需要选择其中一个。)
  4. 点击"全部替换"
  5. 请注意,这适用于同一行上的两个变量,无论其名称如何,例如firstvar[10]="asfa";somevar[x]="asdfas";

    如果只想在第一个变量被称为kelimeler时替换,请将搜索更改为:

    (^kelimeler\[(\d+)\]=[^;]+;\w+\[)[^]]+
    

    如果只想在第一个变量名为kelimeler且第二个变量名为specialvar时替换,请使用:

    (^kelimeler\[(\d+)\]=[^;]+;specialvar\[)[^]]+
    

答案 1 :(得分:0)

您可以使用简单的脚本,例如在JavaScript中:

var x=10;
for (var i=0;i<x;i++) {
    console.log('var['+i+'];');
}

var x是您想要的行数

然后只需从控制台复制记录的输出。

使用这样的重复代码确实看起来非常低效。几乎所有可敬的编程/脚本语言都已经内置了某种增量循环。你想用这段代码完成什么?可能有一种更简单的方法。