【问题标题】:Keep the first word after each comma in a string when there are multiple commas in the string当字符串中有多个逗号时,保留字符串中每个逗号后的第一个单词
【发布时间】:2021-01-18 20:42:44
【问题描述】:

您好,我需要在每个逗号后的分隔符后删除一个单词。例如,如果列中的第一个索引是

'stack overflow, ask question , keep remove'

(请注意,它们都在一个刺中)

我需要输出是,

'stack, ask, keep'

(这是一个字符串)

所以第一个单词被保留,其余单词在每个逗号后被删除。 我使用了 .split 但我没有得到结果。 这是我的方法,

 final_re= [mydf.mycolumn.str.split(' ')[index][0] for index in range(0, len(mydf))]

在这种情况下,它保留第一个表示输入是否为的单词

'stack overflow, ask question , keep remove'

我的输出只是

'stack'

但是,我需要输出

'stack, ask, keep'

感谢任何建议。

【问题讨论】:

  • 假设text = "stack overflow, ask question , keep remove"。然后运行列表理解:[entry.split()[0] for entry in text.split(",")] 如果您共享示例数据框可能会有所帮助

标签: python pandas python-re


【解决方案1】:

这应该会给你所需的输出

string = 'stack overflow, ask question , keep remove'
', '.join([i.split()[0] for i in string.split(',')])

【讨论】:

    【解决方案2】:

    您可以使用正则表达式从字符串s 中删除您不需要的部分:

    import re
    res = re.sub(r"(?: .*?)?(, |$)", r"\1", s)
    

    【讨论】:

      猜你喜欢
      • 2021-06-12
      • 2017-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多