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


how to create regular expression in php for all input tags in a webpage?

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>

还有这个-

<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);

请帮忙。

使用解析器

http://simplehtmldom.sourceforge.net/

例如

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

每个的实际正则表达式是

<input'b[^>]*>(.*?)</input>

<textarea'b[^>]*>(.*?)</textarea>

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