我正在尝试在 binomial 表达式中使用 regex
来替换某些值,以替换等同于确定的常量<的值/em> x
以数字 1
和 0
为指数,示例:binomial = "625x^4+1500x^3 +1350x^2+540x^1+81x^0"
。
这是我正在使用的模式:r'[a-z][^][0]'
但它没有返回所需的值 "625x^4+1500x^3+1350x^2+540x+81"
。
我应该使用什么模式来将 'x^1'
和 'x^0'
替换为空字符或 null 字符,例如 ''
?
最佳答案
你可以使用这个正则表达式:
x\^([01])\b
将匹配 x^
后跟 0
或 1
,并使用将返回 x
的替换函数进行替换code> 如果指数是 1
,否则什么都没有:
binomial = "625x^4+1500x^3+1350x^2+540x^1+81x^0"
res = re.sub(r'x\^([01])\b', lambda m:'x' if m.group(1) == '1' else '', binomial)
输出:
625x^4+1500x^3+1350x^2+540x+81
关于python - 我应该使用什么模式来替换零和一作为指数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74083518/