我想匹配一个
HTML代码,直到下一次出现…或结束.
目前我有以下正则表达式:
(<font color=\"#777777\">\.\.\. .+?<\/font>)
这将匹配:
1. <font color="#777777">... </font><font color="#000000">lives up to the customer's expectations. The subscriber is </font>
2. <font color="#777777">... You may not want them to be </font>
3. <font color="#777777">... </font><font color="#000000">the web link, and </font>
但我想要:
1. <font color="#777777">... </font><font color="#000000">lives up to the customer's expectations. The subscriber is </font><font color="#777777">obviously thinking about your merchandise </font><font color="#000000">in case they have clicked about the link in your email.</font>
2. <font color="#777777">... You may not want them to be </font><font color="#000000">disappointed by simply clicking </font>
3. <font color="#777777">... </font><font color="#000000">the web link, and </font><font color="#777777">finding </font><font color="#000000">the page to </font><font color="#777777">get other than </font><font color="#000000">what they thought it </font><font color="#777777">will be.. If America makes</font>
这是我要解析的html:
<font color="#777777">... </font><font color="#000000">lives up to the customer's expectations. The subscriber is </font><font color="#777777">obviously thinking about your merchandise </font><font color="#000000">in case they have clicked about the link in your email.</font><font color="#777777">... You may not want them to be </font><font color="#000000">disappointed by simply clicking </font><font color="#777777">... </font><font color="#000000">the web link, and </font><font color="#777777">finding </font><font color="#000000">the page to </font><font color="#777777">get other than </font><font color="#000000">what they thought it </font><font color="#777777">will be.. If America makes</font>
并示范:
http://rubular.com/r/mmQ4TBZb96
如何匹配以……开头的所有文本以获得上述所需的匹配?
感谢帮助!
最佳答案 即使你的问题似乎不一致(我不明白为什么你会得到最后的期望匹配),我认为这就是你所追求的:
((<font color=\"#777777\">\.{3}) .+?(<\/font>(?=\s*\2)|$))
它使用前瞻使匹配的结束恰好在下一个“…”序列(或输入结束)之前.