相关疑难解决方法(0)

Python正则表达式匹配所有5位数字但没有更大

我正在尝试将遍布HTML网页的5位数优惠券代码串起来.例如53232,21032,40021等...我能处理的5位与任何字符串比较简单的情况下[0-9]{5},虽然这也符合6,7,8,...,N数字.有人可以建议我如何修改这个正则表达式匹配5位数字?

python regex

24
推荐指数
4
解决办法
6万
查看次数

捕获最多三位数的所有数字

我有以下字符串:

1 2 134 2009
Run Code Online (Sandbox Code Playgroud)

而且我想捕获1-3个数字之间的字符串,因此结果应该是:

['1', '2', '134']
Run Code Online (Sandbox Code Playgroud)

我现在拥有的那些,但也捕获包含超过3位数的字符串中的"前3"数字.这是我目前的正则表达式:

>>> re.findall(r'\d{1,3}', '1 2 134 2009')
['1', '2', '134', '200', '9']

# or a bit closer --

>>> re.findall(r'\d{1,3}(?!\d)', '1 2 134 2009')
['1', '2', '134', '009']
Run Code Online (Sandbox Code Playgroud)

什么是确保另一个数字不立即进行的正确方法?

python regex string

11
推荐指数
2
解决办法
895
查看次数

用于int的Python正则表达式至少有4位数

我正在学习正则表达式,我在这里有点困惑.我有一个字符串,我想从中提取一个至少有4位数字且最多7位数的int.我尝试了如下:

>>> import re
>>> teststring = 'abcd123efg123456'
>>> re.match(r"[0-9]{4,7}$", teststring)
Run Code Online (Sandbox Code Playgroud)

在那里我期待123456,不幸的是,这根本没有任何结果.有人可以帮我一点吗?

python regex int match

5
推荐指数
2
解决办法
2万
查看次数

如何从python中的字符串中提取一定数量的数字?

我有一个如下所示的数据框:

description     
1906 RES 330 ML
1906 RES 330ML
RES 335 c/6
RES 332 c/12
Run Code Online (Sandbox Code Playgroud)

我想提取数字的三个连续数字并将其保存在新列"体积"中.我的代码是这样的:

df['volume'] = df['description'].str.extract('([([\d]*[\d]){3,3}?])')
Run Code Online (Sandbox Code Playgroud)

预期的结果应该是这样的:

volume
330
330
335
332
Run Code Online (Sandbox Code Playgroud)

但是,它给出了如下结果:

volume
1906
1906
335
332
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我修复此代码吗?非常感谢!!!

python regex string dataframe pandas

1
推荐指数
1
解决办法
1747
查看次数

标签 统计

python ×4

regex ×4

string ×2

dataframe ×1

int ×1

match ×1

pandas ×1