0

我有很大的 xml 文件,我想用 notepad++(python 脚本)编辑它。我需要像这样替换文本中的所有数字

(x text)="number1;number2;number3;number4;number5;number6" 

除以 2 的数字(无浮点数)。

(x text)="(number1)/2;(number2)/2;(number3)/2;(number4)/2;(number5)/2;(number6)/2" 

我的代码:

import re
text = editor.getText()
for m in re.finditer( 'x text', text ):
    numbers = [int(n.group(1)) for n in num.finditer(text)]  //here we should make array of that numbers
    numbers []= numbers []/2 //then divide on 2 (integer)
    map (numbers)   //and return 
4

2 回答 2

1
mystr="1;5;7;10;11;20"
mystr=';'.join(map(lambda x:str(int(x)/2),mystr.split(';')))
于 2013-09-26T07:38:05.020 回答
0

我想你正在寻找

import re

my_re = re.compile(";".join(r"(\d+)" for i in range(6)))

return re.sub(
  my_re,
  lambda match: ";".join(str(int(match.group(i)) / 2) for i in range(1, 7)),
  editor.getText())
于 2013-09-26T07:44:38.720 回答