我试图整理一个preg_match来发现以下模式
< [alphanumericstring] id [space or nospace] = [space or nospace] [doublequotes or single quotes] a text string [doublequotes or single quotes] [space or nospace]>
因此代码将识别: 和
这有效:
if (preg_match("/[a-z0-9] id\s*=\s*[\"\']".$variable."\s*[\"\']\s*>/i", $document_content))
但是当我添加第一个'<'像这样:
if (preg_match("/<[a-z0-9] id\s*=\s*[\"\']".$variable."\s*[\"\']\s*>/i", $document_content))
我已经尝试过&lt;同样。最后的&#39;&#39;没有引起任何问题,但有一些特殊的方式&#39;&lt;&#39;应该进入?
答案 0 :(得分:1)
一些注意事项:
试试这个:
<?php
if (preg_match("/\\<[a-z0-9]+ id ?= ?[\"']{$variable} ?[\"'] ?\\>/i", $document_content))
答案 1 :(得分:1)
/\<[a-z0-9]+\sid\s?\=\s?(?:'|")$YOUR_VARIABLE_STRING(?:'|")\s?\>/g
尝试使用这个。 (用http://regexr.com/制作)