当前位置: 代码迷 >> python >> 使用正则表达式拆分函数python在不被整数包围时进行拆分
  详细解决方案

使用正则表达式拆分函数python在不被整数包围时进行拆分

热度:96   发布时间:2023-07-16 11:15:50.0

例如,我有一个包含以下内容的字符串

Input:    
blah 3.16591128 blah.something blah. blah blah.3 3.blah

我想将其与“。”分开。 &“”,这样我就可以得到一个整体,剩下的一切都可以分解。

Output:    
3.16591128, blah, something, blah, blah, blah, 3, blah, 3, blah

我知道如何将两者分开。 以及使用

re.split("\.| ", str)

请帮我解决一下这个。

满足您要求的正则表达式是

r'(?:(?<!\d(?=\.\d))\.|\s)+'

参见

它匹配以下一个或多个连续重复(由于+量化的非捕获组(?:...)+ ):

  • (?<!\\d(?=\\.\\d))\\. -点( \\. )前面没有数字,后面有. 和另一个数字(由于在正向后部内有负向前视(?=\\.\\d)
  • | - 要么
  • \\s空格。