代码之家  ›  专栏  ›  技术社区  ›  Amrith Krishna

从字符串中提取多个子字符串

  •  0
  • Amrith Krishna  · 技术社区  · 6 年前

    pandas Series 在这里我必须提取括号内的所有子字符串。一个字符串可能包含多个这样的子字符串,也可能不包含这样的子字符串。这样的情况怎么处理

    abc(def)ghi(jkl)aaa
    jklmnopqr(jkl)
    (ab)cde(ghi)
    lmnoprst uvwxyz
    

    str.extract ,一次只能从具有 a.str.extract('.*\((.*)\)') . 所以实际上,我错过了子串 def

    期望的结果是

    def
    jkl
    ab
    ghi
    
    1 回复  |  直到 6 年前
        1
  •  2
  •   Scott Boston    6 年前

    尝试:

    df[0].str.extractall(r'\((\w+)\)')
    

               0
      match     
    0 0      def
      1      jkl
    1 0      jkl
    2 0       ab
      1      ghi