Einzelnen Beitrag anzeigen

QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.929 Beiträge
 
Delphi 12 Athens
 
#3

AW: TRegex.Replace Windows vs Android

  Alt 23. Mär 2018, 17:15
Wenn ich direct aValue ausgebe sieht die Ausgabe aus wie erwartet.
ReplaceStr würde ich nicht benutzen wegen der verschiedenen Stringarten
und
TStringhelper.Replace
Ist keine Hilfe, weil ich ja Zeichen für Zeichen entscheiden muss.
Daher ja die Regex.

Ich habe es jetzt mit nem Positiven Matching gelöst und ich hänge dann alle Matches aneinander zu einem String...



Diese Lösung funktioniert, weil ich Hexzahlenpaare vorraussetzen kann.
Delphi-Quellcode:
Function RemoveNonHex(aValue:String):String;
var matches:TmatchCollection;
    aMatch:TMatch;
Begin
   Result := '';
   matches := TRegEx.Matches(aValue,'[A-F0-9][A-F0-9]');
   for aMatch in matches do
     if aMatch.success then
       Result := Result + aMatch.Value;
End;
Eine allgemeine Lösung wäre wohl dies hier
Delphi-Quellcode:
Function RemoveNonHex(aValue:String):String;
var matches:TmatchCollection;
    aMatch:TMatch;
Begin
   Result := '';
   matches := TRegEx.Matches(aValue,'[A-F0-9]');
   for aMatch in matches do
     if aMatch.success then
       Result := Result + aMatch.Value;
End;
Absolut dämlich das TRegEx.Replace nicht in Android geht
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty (23. Mär 2018 um 17:18 Uhr)
  Mit Zitat antworten Zitat