Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我尝试编写一个正则表达式来'.'替换'. '.
'.'
'. '
但是,它会拆分十进制数字,例如'2.5'to '2. 5'。
'2.5'
'2. 5'
有没有办法在不分隔十进制数字的情况下做到这一点?这就是我所拥有的:
re.sub('(?![0-9]+)(\.)(?<![0-9])', '. ', some_string)
您放错了前瞻和后视:
它应该是:
re.sub('(?<![0-9])[.](?![0-9])', '. ', some_string)
您的环顾四周看错了方向:
re.sub('(?<![0-9])\.(?![0-9])', '. ', some_string)
在前面.,你想看看后面没有数字。在 之后.,您要向前看,下一个没有数字。检查多个数字(使用+)没有任何区别。
.
+