我可以使用搜索/替换和正则表达式来递增计数器吗?

时间:2011-09-07 01:26:18

标签: regex aptana

我有一个文件名列表,我想更改它以包含一个计数器:

asdf.jpg to become  id:001, name:asdf.jpg
lkh.jpg  to become  id:002, name:lkh.jpg

在Aptana Studio 3编辑器中,我可以使用搜索/替换正则表达式来递增计数器吗?

由于

1 个答案:

答案 0 :(得分:1)

无法像使用正则表达式所描述的那样进行索引替换。如果您的列表是顺序的,并且没有包含在标记中,那么任何语言的快速脚本都可以为您处理替换。例如,在JavaScript中......

(这段代码快速而且肮脏,没有朋友,在小学里被戏弄,但完成了工作。)

<html>
<script>
function init(){
    var i,id=1,item,arr=[],items=document.body.innerHTML.split(/[\r\n]/g);
    for(i=0;i<items.length;i++){
        item=items[i].replace(/^\s+|\s+$/g,"");
        if(item=='')
            continue;
        arr[arr.length] = 'id:'+
            ('00'.substr(0,2-Math.floor(Math.log(id)/Math.LN10))+id)+
            ', name:'+item;
        id++;
    }
    document.write(arr.join('<br>'));
}
</script>
<body onload='init()'>
asdf.jpg
lkh.jpg
gfh.jpg
iuaa.jpg
(etc...)