Just as I expected, Christian Doeleman came up with this:
>> >$cm = "\\1";
>> >$inch = $cm / 2.54;
>>
>> Her omregner PHP $cm til et tal (det bliver til en float), det tal
>> bliver så enten 0 (kan ikke lade sig gøre), eller også bliver det 1 (den
>> smider backslashen væk).
>
>Hvorfor skulle PHP smide backslashene væk? //1 henviser til den gemte værdi,
>dvs. tallene i strengen.
Ja, den henviser til den gemte værdi når den kommer gennem
ereg_replace() !!
>Hvis jeg undlader, at udføre divisionen i linie 8
>bliver værdierne overført som de skal, blot bliver udregningen ikke udført.
Det er korrekt, for ved divisionen konverterer PHP din string '\1' til
et tal den kan dividere med. Bemærk at '\1' endnu ikke henviser til
noget som helst.
>Kan det ikke lade sig gøre, at lave udregningen? Hvordan kan problemet løses
>alternativt?
Du trækker først de oprindelige tal ud, så regner du på dem og til
sidste putter du tallene ind igen.
Jeg vil tro du skal gøre noget lignende:
find første match
loop indtil ikke flere matches
overfør al tekst mellem start og match-position fra input til output
slet overført tekst fra input
udtræk målet i cm uden benævnelse
slet målet i cm med benævnelse fra input
beregn målet i inches
skriv målet i inches til output
skriv enheden ("in") til output
find næste match
slut loop
Niels
--
http://www.niller.f2s.com/ - niLLer's pages, that's my software
http://g4s.dnsq.org/ - when I'm online
g4s ad post dot ocm - new email! (note: it's .com !)
ICQ#: 50187323