Elixir / Erlang Split-Bitstring bei Zeilenumbrüchen?

8

Gibt es eine Möglichkeit, eine Bitstring, die aus einer Datei geladen wurde, in Zeilenumbrüche zu teilen? Ich habe so etwas:

%Vor%

Und ich möchte ein Array wie folgt:

%Vor%

Gibt es eine Funktion, um den Text in Zeilenumbrüchen zu teilen, um etwas wie dieses Array zu erzeugen?

Vielen Dank im Voraus.

    
Stratus3D 06.11.2013, 22:41
quelle

3 Antworten

11

Zusätzlich zu Roberts Antwort.

Im Elixier kannst du folgendes verwenden: String.split(string, "\n") Sehen Sie sich das Modul String an.

    
couchemar 07.11.2013, 07:04
quelle
10

Sehen Sie sich binary:split/2/3 im Modul binary an. Zum Beispiel mit binary:split(String, <<"\n">>) .

    
rvirding 07.11.2013 00:33
quelle
2

Wenn Sie einfach eine Zeichenfolge in \n aufteilen, gibt es ernsthafte Probleme mit der Portabilität. Dies liegt daran, dass viele Systeme \n verwenden, einige wie ältere macs \r verwenden und Windows \r\n verwendet, um neue Zeilen zu begrenzen.

Der sicherere Weg wäre, eine Regex zu verwenden, um eine der drei oben genannten Möglichkeiten zu erreichen: String.split(str, ~r{(\r\n\|\r|\n)} .

    
Mark Wilbur 06.12.2017 06:10
quelle