Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.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 pattern.match与正则表达式不工作_Python_Regex - Fatal编程技术网

Python pattern.match与正则表达式不工作

Python pattern.match与正则表达式不工作,python,regex,Python,Regex,当我按照上述方式运行编码时,我将得到结果的“不匹配”,而不是“product/” 有人能帮我吗?我已经使用在线工具测试了正则表达式,它显示的很好,并且匹配我要测试的字符串 谢谢您的帮助。您的代码有几个问题。 首先,在开始时没有/,其次,在调用之后提供修饰符: import re def test(stest): pattern = re.compile(r'/product\/(.*?)/i') result = pattern.match(stest) if res

当我按照上述方式运行编码时,我将得到结果的“不匹配”,而不是“product/”

有人能帮我吗?我已经使用在线工具测试了正则表达式,它显示的很好,并且匹配我要测试的字符串


谢谢您的帮助。

您的代码有几个问题。
首先,在开始时没有
/
,其次,在调用之后提供修饰符

import re

def test(stest):
    pattern = re.compile(r'/product\/(.*?)/i')

    result = pattern.match(stest)
    if result:
       print result.group()
    else:
       print "Doesn't match"

test('product/WKSGGPC104/GGPC-The-Paladin')

请参阅。

您使用的是字符串文字,但仍然转义字符串中的\。

如果字符串始终以前缀“product”开头,则只需在正则表达式中省略开头/即可,如果它在字符串中的某个位置但不总是开头,请使用re.search()因为它会扫描整个字符串寻找匹配的子字符串。谢谢你,伙计。这对我真的很有帮助。
import re

def test(stest):
    pattern = re.compile(r'product/([^/]+)'. re.IGNORECASE)

    result = pattern.match(stest)
    if result:
       print(result.group())
    else:
       print("Doesn't match")

test('product/WKSGGPC104/GGPC-The-Paladin')