Heim > Backend-Entwicklung > PHP-Tutorial > php求正则表达式写法,该怎么处理

php求正则表达式写法,该怎么处理

WBOY
Freigeben: 2016-06-13 12:16:46
Original
1021 Leute haben es durchsucht

php求正则表达式写法
原文有以下几种可能:
[font="microsoft yahei" onclick="alert('b')"]中华人民共和国[/font]
[font="abc" onclick="alert('b')"]中华人民共和国[/font]
[font="microsoft yahei"]中华人民共和国[/font]
[font=abc onclick="alert('b')"]中华人民共和国[/font]
[font=abc]中华人民共和国[/font]

我想这样取,我只取出font=后面的字符,但不包括onclick(不一定是onclick,有可能是onfocus之类的)后面的字符还有中华人民共和国这几个字。
意思就是说,只取出字体名字,字体名字可以包含引号,但是字体后面如果有字符,都不取。

求正则表达式的写法。
我这样写,会连onclick以及后面的字符取到。
/\[font=(.*?)\](.*?)\[\/font\]/i
------解决思路----------------------
/\[font="([^\"]+?)".+?\](.*?)\[\/font\]/i
试试
------解决思路----------------------
echo preg_replace('/\[font="([^\"]+?)".*?\](.*?)\[\/font\]/i', '$1@@@@$2', '[font="microsoft yahei"]中华人民共和国[/font]');
------解决思路----------------------
[^\"]
[] 里面的是一个字符集合
^ 是除了什么什么之外
意思就是除了双引号之外的其他任何字符都匹配,\是转义,其实也可以不要
---------------------------------------------------------------------------------
[font=microsoft]中华人民共和国[/font]
'/\[font="*([^\"]+)"*.*?\](.*?)\[\/font\]/i'

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage