parse 'sonderzug'

git-svn-id: https://public-transport-enabler.googlecode.com/svn/trunk@167 0924bc21-9374-b0fa-ee44-9ff1593b38f0
This commit is contained in:
andreas.schildbach 2010-09-16 20:36:49 +00:00
parent ca8a410e01
commit fab1f8f8ef
2 changed files with 18 additions and 1 deletions

View file

@ -465,6 +465,7 @@ public final class BahnProvider implements NetworkProvider
+ "(?:(?:,&nbsp;)?(?:<span class=\"red\">heute )?(Gl\\. " + ParserUtils.P_PLATFORM + ")(?:\\s*</span>)?)?" // position
+ "(?:,<br/><a[^>]*><span class=\"red\">[^<]*</a></span>)?" // (ersatzzug message)
+ "(?:,<br/><span class=\"red\">[^<]*<a[^>]*>[^<]*</a></span>)?" // (ersatzzug message)
+ "(?:,<br/>&nbsp;<span class=\"red\">[^<]*</span>)?" // (sonderzug message)
, Pattern.DOTALL);
private static final Pattern P_DEPARTURES_URI_STATION_ID = Pattern.compile("input=(\\d+)");

View file

@ -199,6 +199,22 @@ public class BahnProviderTest
assertNotNull(m.group(7)); // position
}
@Test
public void departureSonderzug()
{
final Matcher m = assertFineDepartures("" //
+ "<a href=\"http://mobile.bahn.de/bin/mobil/traininfo.exe/dox/656949/964945/873914/217974/80/si=675348&amp;bt=dep&amp;ti=22:16&amp;pt=22:16&amp;p=1111111111&amp;date=16.09.10&amp;max=50&amp;rt=1&amp;&amp;\">\n" //
+ "<span class=\"bold\">RE 30534</span>\n" //
+ "</a>\n" //
+ "&gt;&gt;\n" //
+ "N&#252;rnberg Hbf\n" //
+ "<br />\n" //
+ "<span class=\"bold\">22:58</span>&nbsp;<span class=\"green bold\">p&#252;nktl.</span>,&nbsp;Gl. 2,<br/>&nbsp;<span class=\"red\">Sonderzug</span>");
assertNotNull(m.group(4)); // onTime
assertNotNull(m.group(7)); // position
}
private void assertFineConnectionDetails(String s)
{
Matcher m = BahnProvider.P_CONNECTION_DETAILS_FINE.matcher(s);