Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.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
使用php预匹配,警告_Php_Preg Match - Fatal编程技术网

使用php预匹配,警告

使用php预匹配,警告,php,preg-match,Php,Preg Match,要匹配的字符串:http://127.0.0.1:8008/BeiJing/FangChan/ 我使用preg_match()进行测试 但是得到一个警告:preg_match()[function.preg match]:未知修饰符“(” 有谁能帮我写这个正则表达式,使它对preg_match函数有效吗?我尝试了很多不同的想法,但我对正则表达式的知识还不是很渊博。你需要在它前面放一个\来避开你使用的/You。或者将第一个和最后一个/改成其他类似的东西: if (preg_match('/^([^

要匹配的字符串:
http://127.0.0.1:8008/BeiJing/FangChan/

我使用preg_match()进行测试

但是得到一个警告:
preg_match()[function.preg match]:未知修饰符“(”

有谁能帮我写这个正则表达式,使它对preg_match函数有效吗?我尝试了很多不同的想法,但我对正则表达式的知识还不是很渊博。

你需要在它前面放一个\来避开你使用的/You。或者将第一个和最后一个/改成其他类似的东西:

if (preg_match('/^([^\/])/([A-Z])([^\/]+)/([^\/]+)/$/',"http://127.0.0.1:8008/BeiJing/FangChan/",$match))
    print $match[0];
else
    print 'not match';

但是此regexp将与url不匹配。

您需要通过在其前面放置\来避开您使用的/或将第一个和最后一个/更改为其他类似的内容:

if (preg_match('/^([^\/])/([A-Z])([^\/]+)/([^\/]+)/$/',"http://127.0.0.1:8008/BeiJing/FangChan/",$match))
    print $match[0];
else
    print 'not match';

但是这个regexp将与url不匹配。

/
在您的示例中指示模式的开始和结束,模式之后的任何内容都是一个修饰符

因此:

if (preg_match('|^([^/])/([A-Z])([^/]+)/([^/]+)/$|',"http://127.0.0.1:8008/BeiJing/FangChan/",$match)) print $match[0]; else
读取如下内容:

/^([^/])/([A-Z])([^/]+)/([^/]+)/$/
使用修饰符
([A-Z])([^/]+)/([^/]+)/$/

您必须退出所有
/
,或更改开始和结束指示器:

/^([^/])/

/
是在您的示例中指示模式开始和结束的内容,模式之后的任何内容都是一个修饰符

因此:

if (preg_match('|^([^/])/([A-Z])([^/]+)/([^/]+)/$|',"http://127.0.0.1:8008/BeiJing/FangChan/",$match)) print $match[0]; else
读取如下内容:

/^([^/])/([A-Z])([^/]+)/([^/]+)/$/
使用修饰符
([A-Z])([^/]+)/([^/]+)/$/

您必须退出所有
/
,或更改开始和结束指示器:

/^([^/])/

你可能应该看看这个函数。这是对正则表达式的一个很好的介绍。正则表达式应该匹配什么?它与URL不匹配。它匹配
a/Bc/d/
,只要B大写,但它与任何URL都不匹配。如果你移除锚定
^
$
,它匹配
8/BeiJing/FangChan/
你可能应该看看这个函数。这是对正则表达式的一个很好的介绍。正则表达式应该匹配什么?它与URL不匹配。它匹配
a/Bc/d/
,只要B大写,但它与任何URL都不匹配。如果你移除锚定
^
$
,它匹配
8/BeiJing/FangChan>/