Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.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_Regex - Fatal编程技术网

如何在php中为网页中的所有输入标记创建正则表达式?

如何在php中为网页中的所有输入标记创建正则表达式?,php,regex,Php,Regex,plz帮助我创建正则表达式,解释每个组件。我想解析下面给出的所有输入标记和文本区域标记- <input id="t_15_k_5" type="text" value="Xxychf" name="t_15_k_5" style="display: none;"></input> <input type="hidden" value="sn2sms" name="i_m" style="display: none;"></input> <in

plz帮助我创建正则表达式,解释每个组件。我想解析下面给出的所有输入标记和文本区域标记-

<input id="t_15_k_5" type="text" value="Xxychf" name="t_15_k_5" style="display: none;"></input>
<input type="hidden" value="sn2sms" name="i_m" style="display: none;"></input>
<input id="kriya" type="hidden" value="sa65sdf656fdfd" name="kriya"></input>
<textarea id="m_15_b" name="m_15_b" style="display: none;">mwLCqRzP</textarea>

mwLCqRzP
还有这个-

<input id="mwLCqRzP" class="wickEnabled input" type="text" onblur="if(this.value=='') this.value='Mobile Number';" onfocus="if(this.value=='Mobile Number') this.value='';" value="Mobile Number" onchange="javascript:dispLocMob(this);" onkeydown="javascript:dispLocMob(this);" onkeyup="javascript:dispLocMob(this);" maxlength="10" name="mwLCqRzP"></input>

我已经写了这段代码,但不起作用-

preg_match_all("~<textarea(?=[^>]* name=[\"']([^'\"]*)|)(\s+[^>]*)?>(.*?)</textarea>~",$content,$textAreaResults)

preg_match_all('/<input(?=[^>]* name=["\']([^\'"]*)|)(?=[^>]* value=["\']([^\'"]*)|)/',$content,$results);
preg\u match\u all(“~]*name=[\”]([^'\“]*)|)(\s+[^>]*)?>(.*?”,$content,$textAreaResults)
preg\u match \u all('/]*name=[“\']”([^\'”]*)|)(?=[^>]*value=[“\']”([^\'“]*)|]/,$content,$results);
plz帮助。

使用解析器

比如说

如果必须使用正则表达式,则每个正则表达式都是

每个的实际正则表达式是

]*>(.*)

]*>(.*)


注意:上面的正则表达式与嵌套标记不匹配,在您的情况下,这不是问题

将正则表达式与html混合始终是个坏主意。改用xml解析器。