当前位置: 首页 > 面试题库 >

在Python中分割空格未知的字符串作为分隔符

江建明
2023-03-14
问题内容

我需要一个类似于的函数,str.split(' ')但可能会有多个空格,并且有意义的字符之间的空格数也不相同。像这样:

s = ' 1234    Q-24 2010-11-29         563   abc  a6G47er15        '
ss = s.magic_split()
print(ss)  # ['1234', 'Q-24', '2010-11-29', '563', 'abc', 'a6G47er15']

我可以以某种方式使用正则表达式来捕捉它们之间的空格吗?


问题答案:

如果您不向传递任何参数str.split(),它将把空格运行视为单个分隔符:

>>> ' 1234    Q-24 2010-11-29         563   abc  a6G47er15'.split()
['1234', 'Q-24', '2010-11-29', '563', 'abc', 'a6G47er15']

或者如果你想

>>> class MagicString(str):
...     magic_split = str.split
... 
>>> s = MagicString(' 1234    Q-24 2010-11-29         563   abc  a6G47er15')
>>> s.magic_split()
['1234', 'Q-24', '2010-11-29', '563', 'abc', 'a6G47er15']


 类似资料:
  • 问题内容: 如何在定界符哪里分割此字符串 获得?的输出 问题答案: 你可以使用以下功能:

  • 问题内容: 我在网上找到了一些答案,但是我没有使用正则表达式的经验,我相信这里是需要的。 我有一个字符串,需要用分隔 或也就是说,它必须是分号或逗号后跟一个空格。没有尾随空格的单个逗号应保持不变 示例字符串: 应该拆分为包含以下内容的列表: 问题答案: 幸运的是,Python内置了:) 更新: 在你的评论之后:

  • 在字符串中分隔符的最后一次出现时拆分字符串的推荐Python习惯用法是什么?例如: 接受第二个参数,该参数是要拆分的分隔符的引用。与常规列表索引一样,表示从末尾开始的最后一个。如何做到这一点?

  • 问题内容: 我有一个像这样的字符串: 我想拆分该字符串并选择作为分隔符。 我的代码如下所示: 我得到的是一个包含所有字符作为一个条目的数组: 有人知道为什么吗? 我不能用分割字符串吗? 问题答案: 在RegEx中被视为。因此,您需要对其进行转义:

  • 问题内容: 我想知道我是否打算以正确的方式分割字符串?我的代码是: 我只需要字符串的第一部分,这就是为什么我返回第一项的原因。我问是因为我在API中注意到这意味着任何字符,所以现在我陷入了困境。 问题答案: 接受正则表达式,因此你需要转义以免将其视为正则表达式元字符。这是一个例子:

  • 问题内容: 这是解释此问题的最简单方法。这是我正在使用的: 这就是我想要的: 原因是我想将字符串拆分为标记,对其进行操作,然后再次将其放回原处。 问题答案: