我有一个HTML字符串,我想找到像<a href="link1"><img src="link2"/></a>
我尝试使用此正则表达式模式,但它不起作用:"\<a\s.*\<img.*\<\/a\>"
当我使用该模式时,它会找到类似<a href="link1">some text1</a>some text2.<a href="link1"><img src="link2"/></a>
的字符串,但我不想要第一个<a href
部分。我只想在标签内部使用img标签,我需要帮助。
答案 0 :(得分:0)
当您只想要整体正则表达式的一部分时,您需要使用组或反向引用( )
。
"\<a\s.*\(<img.*\/>)<\/a\>"
然后根据您获得第一组的语言。
http://www.regular-expressions.info/brackets.html
更新: 要完全匹配尝试:
\<a[^<]*\<img.*\<\/a\>
而不是\s
我使用的[^<]
是<
以外的任何字符。