UltraEdit正则表达式替换数字,让每个数字都加1000怎么做

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UltraEdit正则表达式替换数字,让每个数字都加1000怎么做相关的知识,希望对你有一定的参考价值。

替换
STRING 1
STRING 2
STRING 3
...
STRING 1100
变成
STRING 1001
STRING 1002
STRING 1003
...
STRING 2100

Perl规则

单纯用Perl的正则替换的话,好像只有这么做(需要4种手动替换,共5次):

1. 对于1位的数字加上1000,就在数字前面添上100:

Find What: (\\<[0-9]1\\>)
Replace With: 100\\1

2. 2位数字加上1000,就在数字前面填上10

Find What: (\\<[0-9]2\\>)
Replace With: 10\\1

3. 3位数字加上1000,就在数字前面填上1

Find What: (\\<[0-9]3\\>)
Replace With: 1\\1

4. 4位数字以1开头的把第一个1变成2,以2开头的把第一个2变成3

Find What: \\<1([0-9]3)
Replace With: 2\\1
Find What: \\<2([0-9]3)
Replace With: 3\\1

 强烈推荐 vim 编辑器。

用 vim 的正则替换,仅需这样即可完成所有的工作:

:%s/\\d\\+/\\=submatch(0)+1000/g
参考技术A 首先在空白位置写下1000,然后复制,使用选择性粘贴中的加,就行了。 参考技术B 纯正则没法做,可以正则匹配提取,结合程序来做。

ultraedit 正则表达式问题,想给文本的每一个字都加上一个标点符号,怎么写正则表达式?

1、CTRL+R
2.查找栏:(\w)
3、替换栏:$1, (如果是加逗号的话)
参考技术A use Encode;
$dat="测试文本";
$str=decode("gb2312",$dat);
@chars=split //,$str;
foreach $char (@chars)
print encode("gb2312",$char),"。";

以上是关于UltraEdit正则表达式替换数字,让每个数字都加1000怎么做的主要内容,如果未能解决你的问题,请参考以下文章

在UltraEdit的查找和替换中使用正则表达式 (转)

如何替换(WORD或Ultraedit都可,正则表达式亦可)

ultraedit 正则表达式问题,想给文本的每一个字都加上一个标点符号,怎么写正则表达式?

是否可以使用正则表达式替换来增加数字?

使用正则表达式替换仅保留正斜杠和数字

是否可以使用正则表达式替换来增加数字?