ich habe eine Textarea in der etwas aus Excel rein kopiert wird. Ab Ende kann es sein, dass der Benutzer ein paar mal "ausversehen" Enter drückt, so dass der String so aussieht:
blabablablablab...blabla\n\n\n
Wenn nur das Ende das Problem ist, was ist gegen rtrim() einzuwenden?
gesehen, dass der String
blablabla...blablabla\n \n \n
ist. Also habe ich nach "\n \n" gesucht, aber auch da findet er nichts. Nach einem einfachen "\n" kann er suchen und findet es auch. Ich vermute, dass das Leerzeichen zwischen den \n's kein Leerzeichen ist, sondern etwas anderes.
Vielleicht der Wagenrücklauf (carriage return, \r), obwohl der eigentlich neben \n als \r hätte auftauchen müssen und üblicherweise vor dem \n erscheint (\r\n), nicht wie bei Dir dahinter.
Um sicherzugehen, greife Dir die Position eines solchen verkappten Leerzeichens und gibt seinen Bytewert mittels ord() aus. Welchen Wert welches Zeichen hat, kannst Du aus der ASCII-Tabelle und ihrer iso-8859-1-Erweiterung ersehen.
Merkwürdige Kombinationen kannst Du mit preg_replace() austauschen, für bekannte Kombinationen würde ich aber lieber zu strtr() mit Feldparameter greifen.