【问题标题】:Python: split string and store tokens with delimeters in list [closed]Python:拆分字符串并在列表中使用分隔符存储标记[关闭]
【发布时间】:2015-10-23 18:01:53
【问题描述】:

我想要拆分字符串并在列表中存储带有分隔符的标记。我的意思是,我有这样的字符串:

s = "hi,my+dear-friend*1"

我想得到:

["hi", ",", "my", "+", "dear", "-", "friend", "*", "1"]

【问题讨论】:

  • 您对分隔符的定义是什么?是否有可接受的分隔符列表?
  • 我有列表分隔符 "+-*/,=" 并且有带文本的字符串,我想要获取标记列表。我想在 Java 中做类似 StringTokenizer 类的事情。

标签: python regex string list split


【解决方案1】:

你可以使用正则表达式:

import re

s = "hi,my+dear-friend*1"
re.findall(r"\w+|\W",s)

输出:

['hi', ',', 'my', '+', 'dear', '-', 'friend', '*', '1']

【讨论】:

    【解决方案2】:

    您需要将捕获组与正则表达式一起使用。

    >>> import re
    >>> s = "hi,my+dear-friend*1"
    >>> re.split(r'(\W)', s)
    ['hi', ',', 'my', '+', 'dear', '-', 'friend', '*', '1']
    

    【讨论】:

      猜你喜欢
      • 2010-12-26
      • 2016-07-05
      • 1970-01-01
      • 2016-03-03
      • 2018-06-09
      • 2011-06-09
      • 2015-10-21
      • 1970-01-01
      • 2019-08-30
      相关资源
      最近更新 更多