[英]How to substitute a numeric value in a string using Python?
我需要使用Python脚本修改C源文件。 我将如何更改此字符串:
#define MY_STRING 0
至:
#define MY_STRING 1
使用Python正则表达式?
理想情况下,该解决方案应在数值之前容纳未知数量的空格。
(基本上,我不知道如何指定原始字符串减去新字符串中的数值)。
在数字和文本之间使用\\s+
表示任意数量的空格。
code = re.sub('define MY_STRING\s+0', 'define MY_STRING 1', code);
如果要像原始字符串一样在数字前保留相同数量的空格,则必须捕获它,然后在替换时使用它。
code = re.sub('(define MY_STRING\s+)0', "\\1 1", code);
## \\1 is the captured group on regex inside (...)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.