Problem mit ReplaceRegularExpression
Verfasst: 28.12.2012 18:58
hi Grüßt euch,
ich bin erst seit kurzem wieder bei Purebasic geladet war davor bei xprofan falls das hier wer kennt.
Nun versuche ich einen neuen Anlauf und habe gleich ein Problem.
Ich suche nach einer möglichkeit in einem String nach gleichen Kombinationen zu suchen,diese dann zu ersetzen.
als Beispiel
habe ich als String 11 12 3 4 5
dann soll 11 und 12 ersetzt werden als ergebniss soll ich dann 3 3 3 4 5 bekommen.
zweites beispiel.
1 2 11 12 5 hier soll das Ergebniss 1 2 2 2 5 sein.
Hier habe ich schon einmal einen Anfang gewagt nur funktioniert noch leider nicht so wie gewollt.
in Xprofan sah das ganze so aus:
was auch funktioniert hat.
Nun hoffe ich einfach mal das jemand eine Idee hat 
ich bin erst seit kurzem wieder bei Purebasic geladet war davor bei xprofan falls das hier wer kennt.
Nun versuche ich einen neuen Anlauf und habe gleich ein Problem.
Ich suche nach einer möglichkeit in einem String nach gleichen Kombinationen zu suchen,diese dann zu ersetzen.
als Beispiel
habe ich als String 11 12 3 4 5
dann soll 11 und 12 ersetzt werden als ergebniss soll ich dann 3 3 3 4 5 bekommen.
zweites beispiel.
1 2 11 12 5 hier soll das Ergebniss 1 2 2 2 5 sein.
Hier habe ich schon einmal einen Anfang gewagt nur funktioniert noch leider nicht so wie gewollt.
Code: Alles auswählen
If CreateRegularExpression(0,"(11|12)")
x=0
For x=1 To 12
If Str(x)+Str(x)+Str(x)+Str(x)+Str(x) = ReplaceRegularExpression(0,string,Str(x))
Debug "Treffer"
EndIf
Debug suchergebniss$
Next X
FreeRegularExpression(0)
Else
Debug RegularExpressionError()
EndIf
die Variable String wird so aufgebaut.
string = Str(anzeige(1))+" "+Str(anzeige(4))+" "+Str(anzeige(7))+" "+Str(anzeige(10))+" "+Str(anzeige(13))
was auch funktioniert hat.
Code: Alles auswählen
suchmuster$="(11|12)"
WhileLoop 1,12,1
If @Str$(&Loop)+","+@Str$(&Loop)=Translate$(string$,suchmuster$,@Str$(&Loop))
'Treffer
endif
endwhile
