PHP正则表达式匹配这三个字符串
问题描述:
我需要检查是否有任何字符串遵循与这些相同的格式。PHP正则表达式匹配这三个字符串
Val-Pak *Client Referral* Gift Certificate
它需要在正则表达式中完成。我无法找到如何包含*和 - 。
感谢
答
preg_grep('/Val-Pak|\*Client Referral\*|Gift Certificate/', $myArray);
preg_grep
过滤字符串数组,并返回只有那些包含你所提到的字符串之一。如果你只需要检查一个字符串,那么preg_match
就可以。
如果您需要转义包含在正则表达式中的任意字符串,那么preg_quote
就派上用场了。
在任何情况下,星号*
是正则表达式中的特殊字符,需要使用\
进行转义。
答
简单的回答是,你用反斜杠转义:
/Val\-Pak/
/\*Client\sReferral\*/
/Gift\sCertificate/
但它可能有助于阅读一些正则表达式教程,因为理解大图可以帮助您长远。