Thread Regex für SMS in Javascript (6 answers)
Opened by Gustl at 2019-10-12 19:54

Gustl
 2019-10-12 19:54
#190694 #190694
User since
2011-01-27
441 Artikel
BenutzerIn
[Homepage]
user image
Hallo zusammen,

ich habe einen Text mit Zeilenumbrüche von einer textarea. Dieser Text soll per SMS versendet werden. Also muss ich den Text jeweils in 160 Zeichen spliten. nun sollen aber die Wörter natürlich nicht getrennt werden. Zuerst schau ich ob der Text über 160 Zeichen hinaus geht. Nur dann brauch ich eine 2. oder mehrere SMSs. dann möchte ich das letzte Wort, also alles nach dem letzten \s (space character) in die nächste SMS rein tun. Das schreit ja nach einer Rekursion.

Um das ganze zu vereinfachen nehme ich hier mal an, dass es keine 160 Zeichen sind sondern nur 20 sind.

Beispiel 1 ohne Zeilenumbruch:
Code: (dl )
Ich bin ein sms Text der versendet werden soll

Das Wort Text schließt dann bei 20 Zeichen ab.

Also hole ich mir per regex erstmal die ersten 20 Zeichen: (.{20})(.*)
Dann habe ich in group 1 folgendes:
Code: (dl )
Ich bin ein sms Text


Auf dem string gehe ich dann über folgender regex: (.*)\s(?=\S*$)(.*)

in group 1 habe ich dann die 1. SMS und group 2 (Text) kommt dann am Anfang der nächsten sms mit dran.

Das funktioniert aber nur OHNE Zeilenumbrüche.

Genau da ist mein Problem.

Hat wer eine Idee wie die Regex dafür besser aussehen könnte? Oder würdet ihr das anders angehen?

Danke.

Gruß

View full thread Regex für SMS in Javascript