""> php正则表达式的html标签匹配input,select,textarea的问题-PHP Chinese Network Q&A
php正则表达式的html标签匹配input,select,textarea的问题
高洛峰
高洛峰 2016-10-27 09:23:21
0
1
552

我想用正则表达式匹配html代码中的input,select和textarea这三个标签,其他的标签都不需要。我的写法如下:

$text = "
";$pattern="/<.*?[input|textarea|select].*?>/i"; preg_match($pattern1,$text,$matches); var_dump($matches);

但是我发现我写的却可以匹配所有的标签,我知道是[input|textarea|select]写错了,但是我不知道该如何修改或者是有更简单的方法来写,希望有大神可以解答一下。

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

reply all (1)
三叔

[] 的意思匹配指定字符,而不是字符串

(string1|string2) 才是匹配多个字符串

(?! string1) 匹配 非 字符串

正确的为:

/<.>/is
           

比如

[a-zA-z0-9_\-] 表示匹配 a~z A~Z 0~9 _ - 这些字符 (只有一个字符) [a-zA-z0-9_\-]* 表示匹配 a~z A~Z 0~9 _ - 只有这些字符的字符串(注意后面的 * ) (input|textarea|select) 表示匹配这些字符串


    Latest Downloads
    More>
    Web Effects
    Website Source Code
    Website Materials
    Front End Template
    About us Disclaimer Sitemap
    php.cn:Public welfare online PHP training,Help PHP learners grow quickly!