Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Scrapy SGMLLinkedExtractor如何使用正则表达式定义规则_Python_Regex_Scrapy - Fatal编程技术网

Python Scrapy SGMLLinkedExtractor如何使用正则表达式定义规则

Python Scrapy SGMLLinkedExtractor如何使用正则表达式定义规则,python,regex,scrapy,Python,Regex,Scrapy,我有一个像http://www.example.com/kaufen/105975478 我只想允许在url中包含“/kaufen/”并且在url末尾包含9位整数的链接 我使用以下allow语句仅允许包含“/kaufen/”的链接: allow=('/kaufen/', ) 如何扩展allow语句,使其仅跟随结尾有9位数字的链接?您可以使用\/kaufen\/[0-9]{9} \/kaufen\/是指/kaufen/literaly [0-9]{9}表示9个数字字符 var re=/\

我有一个像
http://www.example.com/kaufen/105975478

我只想允许在url中包含“/kaufen/”并且在url末尾包含9位整数的链接

我使用以下allow语句仅允许包含“/kaufen/”的链接:

allow=('/kaufen/', )

如何扩展allow语句,使其仅跟随结尾有9位数字的链接?

您可以使用
\/kaufen\/[0-9]{9}

  • \/kaufen\/
    是指/kaufen/literaly
  • [0-9]{9}
    表示9个数字字符

var re=/\/kaufen\/[0-9]{9}/gi;
var str='1〕http://www.homegate.ch/kaufen/105975478';
var-m;
while((m=re.exec(str))!==null){
如果(m.index==re.lastIndex){
re.lastIndex++;
}
//使用m变量查看结果。
console.log(m[0]);
}
您可以使用:

allow=(r'kaufen/\d+$')

你看到
Python
标记了吗?@Jan是的,但是代码片段只在js中可用。我给出了正则表达式的答案。如果你读了这个问题,你会发现OP对正则表达式周围的代码没有问题。但是两种语言之间有一些区别,例如你不需要避开斜杠:,另外
[0-9]
可以缩短为
\d+
。关于斜杠,这就是
r..
Python
中的作用。