[英]how to ignore a character in the regular expression
我不知道如何忽略急诊室的项目。
仅需要获取P1,但这将返回/ P1。
可能会忽略酒吧吗?
$pattern = "#(/P[0-9])?#";
这里有两个选项:
从组中排除它, P1
将是捕获组中的内容:
$pattern = "#/(P[0-9])#";
使用后退标记,以使/
甚至不是比赛的一部分,整个比赛将为P1
:
$pattern = "#(?<=/)P[0-9]#";
请注意,我还删除了?
在您的小组之后,因为我认为您实际上并不想要它,这使得前一个元素是可选的,因此正则表达式(/P[0-9])?
将与文字上的任何字符串匹配(如果/P[0-9]
无法匹配,则它将匹配空字符串)。
使用preg_ *函数,您可以使用\\K
技巧来重置比赛开始,例如:
$pattern = '~/\KP[0-9]~';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.