Escape-последовательность в Java - PullRequest
0 голосов
/ 23 февраля 2012

Мне нужно использовать регулярное выражение со строкой из RSS-канала.Это следующая строка.

private String text = "<![CDATA[<table border="0" cellspacing="0" cellpadding="6px">   <tr><td valign="top" align="center" width="150px"><a href="http://entertainment.desktopnexus.com/wallpaper/978620/"><img src="http://static.desktopnexus.com/thumbnails/978620-thumbnail.jpg" border="1" style="border: 1px solid #000000;"></a><br><strong>Princess,Aurora,Sleeping,Beauty</strong></td><td valign="top" style="font-size: 10pt;">A new wallpaper has been posted to the <a href="http://entertainment.desktopnexus.com">Entertainment</a> gallery on <a href="http://www.desktopnexus.com">Desktop Nexus</a>.<br><br>Uploaded By: <a href="http://my.desktopnexus.com/Jessowey/">Jessowey</a><br>Category: <a href="http://entertainment.desktopnexus.com/cat/movies/">Movies</a><br>Date Uploaded: 02/23/12<br>Native Resolution: 1024x768<br>Points: +1<br>Download Count: 0<br><br><b><a href="http://entertainment.desktopnexus.com/wallpaper/978620/">View This Wallpaper Now</a></b></td></tr></table>]]>";

Как видите, "внутри строки есть", поэтому я не могу использовать ее как выражение. Я пытался использовать необработанную строку, но, как вы знаете, это невозможнов Java.

Как я могу извлечь тег img из приведенного выше заявления. Мне нужно сделать это программно.

Заранее спасибо!

Ответы [ 3 ]

1 голос
/ 23 февраля 2012

Используйте \ "в строке, чтобы использовать" внутри нее. Например:

String yourFeed = "My so \"called\" String";

Это работает для некоторых других специальных символов, таких как обратная косая черта:

String antoherFeed = "Hello \"World\", what a nice \\ day \\ ";

Вы можете проанализировать ваш RSS-канал для таких специальных символов. Как в этом вопросе: JAVA: проверить строку, если в ней есть специальный символ

и отформатируйте их для допустимых строковых символов.

1 голос
/ 23 февраля 2012

Если вы хотите использовать " в строковом литерале в Java, вы должны избежать их с обратной косой чертой, как это

String stringWithParenthesis = "text \"in parenthesis\" out ";
1 голос
/ 23 февраля 2012

Очень и очень сложно (в общем) использовать регулярные выражения для разбора XML / HTML, есть еще одна запись , в которой перечислены хорошие парсеры XML для Java и их сильные стороны. Я предлагаю вам использовать одно из этих.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...