diff --git a/src/de/schildbach/pte/SncbProvider.java b/src/de/schildbach/pte/SncbProvider.java
index 4203f97d..298ad67e 100644
--- a/src/de/schildbach/pte/SncbProvider.java
+++ b/src/de/schildbach/pte/SncbProvider.java
@@ -110,12 +110,13 @@ public class SncbProvider extends AbstractHafasProvider
, Pattern.DOTALL);
private static final Pattern P_DEPARTURES_COARSE = Pattern.compile("
\r\n(.*?)
", Pattern.DOTALL);
private static final Pattern P_DEPARTURES_FINE = Pattern.compile(".*?" //
- + "(.*?).*?" // line
+ + "([^<]*).*?" // line
+ ">>\r\n" //
+ "(.*?)\r\n" // destination
+ "
\r\n" //
+ "(\\d{1,2}:\\d{2})\r\n" // time
+ "(?:([+-]?\\d+|Ausfall)\r\n)?" // delay
+ + "(?:Aktivierung\r\n)?" + "(?:([^<]*)
\r\n)?" // position
, Pattern.DOTALL);
public QueryDeparturesResult queryDepartures(final int stationId, final int maxDepartures, final boolean equivs) throws IOException
@@ -165,7 +166,10 @@ public class SncbProvider extends AbstractHafasProvider
mDepFine.group(4); // TODO delay
- final Departure dep = new Departure(parsedTime.getTime(), line, line != null ? lineColors(line) : null, null, 0, destination);
+ final String position = mDepFine.group(5);
+
+ final Departure dep = new Departure(parsedTime.getTime(), line, line != null ? lineColors(line) : null, position, 0,
+ destination);
if (!departures.contains(dep))
departures.add(dep);