【发布时间】:2014-10-28 00:55:12
【问题描述】:
昨晚我试图在 Python3 中处理字符串。 如果您能帮我解决这个问题,您将非常有帮助。
所以,假设我有一个这样的字符串:
a = "√22+34-4+√(2+3)/5+√3"
注意:字符串 a 是用户输入的,每次都可能改变。
我想把字符串管理成这样:
a = "√(22)+34-4+√(2+3)/5+√(3)"
然后我可以使用a.replace("√","sqrt").将“√”替换为“sqrt”
有什么建议吗?对不起我的英语不好:) 谢谢
【问题讨论】:
-
您要匹配的内容类似于“√ 后跟一串数字,但不是 √ 后跟括号中的表达式”,对吗?用纯粹的
str方法写起来相当困难,但用正则表达式或pyparsing或几乎任何其他方法写起来相对容易。 -
如果你的问题真的是关于如何修改 python 字符串:你不能(至少不是“就地”)。不过,您可以根据前一个字符串创建新字符串。 stackoverflow.com/questions/9189172/python-string-replace
-
@abarnet & Ricardo Cárdenes:我想做的是捕捉 √ 后面的数字,并在出现“+”或“-”或“*”或“/”或“(”时停止或者 ”)” 。 arshaji 的答案足以解决我的问题。我可以使用正则表达式“re”。非常感谢您的回答:)
标签: python regex string python-2.7 split