Wie das Inkrementieren von Buchstaben wie zahlen in PHP?
Ich würde gerne eine Funktion schreiben, die nimmt 3 Zeichen und erhöht Sie und gibt die neu inkrementierten Zeichen als string.
Ich weiß, wie die Erhöhung eines einzigen Buchstaben zum nächsten, aber wie würde ich wissen, Wann zu erhöhen, den zweiten Buchstaben und dann stoppen und dann erhöhen Sie den ersten Buchstaben immer wieder einen sequenziellen Anstieg?
Also, wenn AAA übergeben wird, zurück AAB. Wenn
AAZ ist bestanden Rückkehr ABA (der schwierige Teil).
Ich würde schätzen, Hilfe mit der Logik und was php-Funktionen nützlich sein wird, zu verwenden.
Sogar besser, einige hat es bereits getan oder es ist eine Klasse zur Verfügung, dies zu tun??
Danke an alle für jede Hilfe
InformationsquelleAutor der Frage Abs | 2010-08-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zeichen/string Inkrementieren funktioniert in PHP (obwohl Dekrement nicht)
InformationsquelleAutor der Antwort Mark Baker
Können Sie es mit dem ++ - operator.
aba
Aber diese Implementierung hat einige seltsame Dinge:
Dies wird drucken Sie die Briefe aus
a
zuy
.Dies wird drucken Sie lettes aus
a
zuz
und weiter geht es mitaa
und endet mityz
.InformationsquelleAutor der Antwort tamasd
Du suchst, in eine Zahlendarstellung problem. Dies ist base24 (oder wie viele zahlen Ihr alphabet hat). Nennen wir die Basis b.
Vergeben Sie eine Nummer für jeden Buchstaben im alphabet (A=1, B=2, C=3).
Nächste, Abbildung heraus Ihre Eingabe "Nummer": Die Darstellung "ABC" bedeutet
A*b^2 + B*b^1 + C*b^0
Verwenden Sie diese Formel zu suchen, die Zahl (int). Inkrement.
Nächste, konvertieren es zurück zu Ihrem system Anzahl: Division durch
b^2
zu bekommen Dritte Ziffer, der Rest (modulo) vonb^1
für die zweite Ziffer, der Rest (modulo) von `b^0^ für die Letzte Ziffer.Dies könnte helfen: Wie konvertieren von base10 zu anderen base.
InformationsquelleAutor der Antwort Daren Thomas
Dem richtigen Weg ist, nicht mit
++
aber verwendenord()
einechr()
Sollten Sie nicht die Inkrementierung von strings, daher
ord()
wandelt die Buchstaben in den ASCII-num Darstellungchr()
umgewandelt zurück zu dem BriefInformationsquelleAutor der Antwort simPod
Habe ich diese Methoden in c#, dass man wahrscheinlich konvertieren php ändern und an Ihre Bedürfnisse anpassen, ich bin mir nicht sicher, Hexavigesimal ist die genaue Bezeichnung für diese, obwohl...
BEARBEITEN
Sehe ich durch die anderen Antworten, die in PHP, die Sie verwenden können
++
statt, nice!!!InformationsquelleAutor der Antwort CaffGeek
Könnten Sie die ASCII-codes für die alpha-numerics. Von dort haben Sie increment und decrement, um die vorherigen/nächsten Zeichens.
Könnte man split den string in einzelne Zeichen und dann anwenden der Transformationen auf diese Zeichen.
Nur ein paar Gedanken zum Einstieg.
InformationsquelleAutor der Antwort Andreas
InformationsquelleAutor der Antwort Vimal Kumar E