qq_遁去的一_1
一种方法是使用 re.findall 从字符串中提取连续的数字,并保留那些长度为:nl = ['23 2312 dfr tr 133', '2344 fdeed', 'der3212fr342 96']import redef length_n_digits(l,n): return [s for i in l for s in re.findall(rf'(?<!\d)\d{{{n}}}(?!\d)', i) or ['']]请注意,双大括号只是为了转义内大括号,不会发生插值。 并要环顾四周,并确保仅当数字序列不被其他数字包围时才匹配。'{{}}'(?<!\d)(?!\d)nlength_n_digits(l, 2)# ['23', '', '96']length_n_digits(l, 3)# ['133', '', '342']length_n_digits(l, 4)# ['2312', '2344', '3212']