我有这个字符串方程:
400-IF(3>5,5,5)+34+IF(4>5,5,6)
我想用字符串'IF(3>5,5,5)', 表示'IF()' 语法,所以这里我用了两个if语法。
所以 re.split() 应该给出长度为 2 的列表 ['400-', '+34+']
我制作了 re 并按如下方式使用。
re.split('IF[\(][0-9,a-z,A-Z,\$]*[\>|\<|=|/|%|*|^]?(.*)+[\,][0-9,a-z,A-Z,\$]*[\,][0-9,a-z,A-Z,\$]+[\)]', '400-IF(3>5,5,5)+34+IF(4>5,5,6)
')
但它没有返回正确的答案。我的re 有什么错误。我是 re 的新手。
任何人都可以在 python 中修改这个 re 吗?
请您参考如下方法:
x="400-IF(3>5,5,5)+34+IF(4>5,5,6)"
print [i for i in re.split(r"IF\([^)]*\)",x) if i]
你可以简单地使用它。
