2017-10-30 1 views
0

I (später löschen), um den Text nach einem bestimmten Zeichen zum Beispiel zu nehmen versuchen:Wie kann ich den Text nach einem bestimmten Zeichen in einer Zeichenfolge löschen?

$char = "This is an example text but this text needs it\n this text no longer"; 

Ich möchte nur den Text vor dem „\ n“ danach will ich es lösche

EDIT:

ich möchte Sie so etwas wie dies zurück:

This is an example text but this text needs it 
+0

es ist zu breit ... – RomanPerekhrest

+0

str_split, explode, strpos .... – nogad

+0

eine weitere Option, um die spezifischen Informationen zu nehmen? – IrvinS

Antwort

1

Sie die Zeichenfolge mit dem spezifischen Charakter kann explodieren und anzuzeigen onl y erster Teil. Wenn Sie Ihren Beispielstring betrachten, können Sie so programmieren.

$char = 'This is an example text but this text needs it\n this text no longer'; 

$string = explode('\n',trim($char)); 
echo $string[0]; 

heraus gesetzt:

This is an example text but this text needs it 
1

strpos Verwenden der ersten Instanz eines bestimmten, Zeichen zu lokalisieren, dann substr dem Offset zurückzukehren.

$string = "This is an example text but this text needs it\n this text no longer"; 
if(($length = strpos($string, "\n")) !== false) 
{ 
    $string = substr($string, 0, $length); 
} 
echo $string; 
1
$before_newline = strtok($char, "\n"); 

Die strtok() Funktion kann dies zu erreichen, verwendet werden. In dem Fall, in dem das Newline-Zeichen nicht in der Zeichenfolge erscheint, wird das Ergebnis die ganze Zeichenfolge sein. Ansonsten ist es der Teil der Zeichenkette vor dem Newline-Zeichen.

Verwandte Themen