我有这些字符串的可能性:
3 paths
12 paths
12 path rooms
获取没有文本的数字的reqular表达式是什么。
答案 0 :(得分:2)
你可以用这个: 正则表达式= [\ d] *
答案 1 :(得分:2)
另一种方法是使用[0-9]而不是\ d
import re
def extract_number(string):
r = re.compile('[0-9]+')
return r.match(string).group()
答案 2 :(得分:2)
你说你只能使用scrapy方法,所以我想你是在追求:
hxs.select('//some/xpath/expression/text()').re(r'(\d+).*')
答案 3 :(得分:1)
(\d+).*\n
用于提取数字,然后跳过其余部分。
number_finder = re.compile('(\d+).*\n')
number_finder.findall(mystr)
将输出数值
的数组示例:
In [3]: r = re.compile('(\d+).*\n')
In [4]: r.findall('12 a \n 12 a \n')
Out[4]: ['12', '12']
答案 4 :(得分:1)
要查找的正则表达式模式为\d
。所以在python中你可以将它编码为:
pattern = re.compile(r'\d+')
result = re.search(pattern, input_string)