操作对文本中的所有数字执行



我想将文本中的所有数字相乘文件被相同的因子。我真的不知道从哪里开始(我目前正在尝试重新替换方法,但这似乎并不奏效)。请帮助!

使用匹配数字的regexp和函数替换。函数应该将匹配的字符串解析为数字,将其乘以2,然后将其作为字符串返回。

import re
def int_or_float(s):
try:
return int(s)
except ValueError:
return float(s)
text = "Blah blah 3 foo bar -15 xxx 124.3"
newtext = re.sub(r'-?d+(?:.d+)?', lambda m: str(int_or_float(m.group(0)) * 2), text)
print(newtext)
# Output: Blah blah 6 foo bar -30 xxx 248.6

加上这个:

Regex regex = new Regex(@"^d$");你得到所有的数字。

那么就把它们相乘。

(如果你想把它们放回文本,只需得到这些数字的索引)

最新更新