On Wed, 8 Oct 2008, [EMAIL PROTECTED] wrote:

Hi,

ich habe Zeilen wie folgt:

putAJAXMarker(18053,8.020974,50.164928,"roads do intersect on same layer but
don't share a common node. bridge/tunnel or connection? please check.
[Gary68]<hr />fixed [PHerison]",1);
putAJAXMarker(18448,8.162421,50.132761,"brücke fehlt? [Gary68]",1);
putAJAXMarker(16773,8.119601,50.227869,"there might be a bridge missing?
please check. [Gary68]",0);

Und möchte mit RE folgendes extrahieren:

- die zweite und dritte Zahl, lat und lon

Ich habe folgenden Code:

my ($lon) = ($line =~ /^.+\,([-\d,\.]+)\,/);
my ($lat) = ($line =~ /^.+,[-\d,\.]+,([-\d,\.]+),/);

Der mir aber beide Male lat ausgibt, also die 50.x

Kann das jemand korrigieren bitte?

Und ich benötige noch eine RE für die letzte Zahl am Ende, wenn schon mal
ein Experte dran ist.

Irgendwie kriege ich das mit den Kommas nicht hin, oder?

($lon,$lat,$last) = /\(\d+,(\d+\.\d+),(\d+\.\d+),.+,(\d+)\)/

Zeilen zusammenbasteln überlasse ich Dir, obiges geht so nur, wenn der String in einer Zeile ist.

Zerhackt in zwei Teile:

($lon,$lat) = /\(\d+,(\d+\.\d+),(\d+\.\d+),/
($last) = /,(\d+)\)/

Ciao
--
http://www.dstoecker.eu/ (PGP key available)
_______________________________________________
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de

Antwort per Email an