Wie kann ich das ETX-Zeichen (0x03) vom Ende einer Zeichenkette entfernen? Ich würde entweder eine Funktion mögen, ansonsten kann ich einen regulären Ausdruck schreiben, alles was ich wissen möchte ist, wie man das ETX-Zeichen in einem regulären Ausdruck anpasst? trim()
funktioniert nicht.
Um Charles 'Antwort zu vervollständigen, hatte ich einen Fall, in dem das ETX-Zeichen nicht am Ende der Zeile war, daher musste ich den folgenden Code verwenden:
%Vor%Entfernen Sie einfach das $ -Zeichen.
Der ETX ist ein Kontrollzeichen, was bedeutet, dass wir einige zusätzliche Anstrengungen unternehmen müssen es existiert.
Von der interaktiven PHP-Eingabeaufforderung:
%Vor%Mit anderen Worten, Sie können das Zeichen einfach in die Regex-Zeichenfolge einfügen. Nun, diese könnte fehlschlagen. Diese Technik kann aufgrund von Zeichensätzen und anderen schrecklichen Dingen fehlschlagen.
Zusätzlich zu chr(3)
kannst du urldecode('%03')
auch versuchen, das Zeichen zu erstellen. Sie können auch eine spezielle Escape-Syntax verwenden, die auf den PCRE-Syntaxseiten aufgeführt ist: /\x03$/
Hier ist eine Funktion für Sie, die die letzte Methode verwendet:
%Vor%Bei einer Schätzung rtrim ($ var, "\ c"); oder preg_replace ("/ \ c + \ $ /", "", $ var);
Tags und Links php regex special-characters ascii control-characters