繁体   English   中英

如何在 Python 中使用正则表达式提取三个字母后跟五个数字

[英]How To Extract Three Letters Followed By Five Digits Using Regex in Python

我在 Python 中有以下 dataframe:

abc12345

abc1234

abc1324。

如何仅提取三个字母后跟五个数字的字母?

期望的结果是:

abc12345。

df.column.str.extract('[^0-9](\d\d\d\d\d)$')

我认为这可行,但是有没有更好的方法来修改(\d\d\d\d\d)? 如果我有 30 位数字怎么办? 然后我必须输入 \d 30 次,这是低效的。

您应该能够使用:

'[a-zA-Z]{3}\d{5}'

如果字符串不包含大写字母,则可以减少为:

'[a-z]{3}\d{5}'

更改{x}中的值以调整要捕获的字符数。

或者像下面这样的代码:

' 重新导入

s = "abc12345"

p = re.compile(r"\d{5}")

c = p.match(s,3)

打印(c.group())'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM