Antworten:
$output = rtrim($string, '.');
(Referenz: rtrim auf PHP.net )
…
dafür. Wenn Sie den letzten Punkt entfernen und der verbleibende noch ein Punkt ist, würde der Titel der Frage nicht viel Sinn machen, oder?
Die Verwendung von rtrim ersetzt alle "." am Ende nicht nur das letzte Zeichen
$string = "something here..";
echo preg_replace("/\.$/","",$string);
character_mask
im trim
Grunde genommen jede Instanz des Charakters in der gesamten Zeichenfolge entfernt
Um das letzte Zeichen nur dann zu entfernen, wenn es sich um einen Punkt handelt und nicht darauf zurückgegriffen wird preg_replace
, können Sie die Zeichenfolge einfach als Zeichenfeld behandeln und das letzte Zeichen entfernen, wenn es sich um einen Punkt handelt.
if ($str[strlen($str)-1]==='.')
$str=substr($str, 0, -1);
===
stattdessen verwenden, ==
um auch die
Ich weiß, dass die Frage etwas alt ist, aber vielleicht ist meine Antwort für jemanden hilfreich.
$string = "something here..........";
ltrim würde führende Punkte entfernen. beispielsweise:-ltrim($string, ".")
rtrim rtrim($string, ".")
würde nachfolgende Punkte entfernen.
trimmen trim($string, ".")
würde nachlaufende und führende Punkte entfernen.
Sie können dies auch durch Regex tun
preg_replace würde entfernen kann verwendet werden, um Punkte am Ende zu entfernen
$regex = "/\.$/"; //to replace single dot at the end
$regex = "/\.+$/"; //to replace multiple dots at the end
preg_replace($regex, "", $string);
Ich hoffe es ist hilfreich für dich.
Ich weiß, dass die Frage gelöst ist. Aber vielleicht ist diese Antwort für jemanden hilfreich.
rtrim()
- Entfernen Sie Leerzeichen (oder andere Zeichen) vom Ende einer Zeichenfolge
ltrim()
- Entfernen Sie Leerzeichen (oder andere Zeichen) vom Anfang einer Zeichenfolge
trim()
- Entfernen Sie Leerzeichen (oder andere Zeichen) vom Anfang und Ende einer Zeichenfolge
Zum Entfernen von Sonderzeichen am Ende der Zeichenfolge oder Wenn die Zeichenfolge am Ende dynamische Sonderzeichen enthält, können Sie dies durch Regex tun.
preg_replace
- Führen Sie eine Suche und Ersetzung für reguläre Ausdrücke durch
$regex = "/\.$/"; //to replace the single dot at the end
$regex = "/\.+$/"; //to replace multiple dots at the end
$regex = "/[.*?!@#$&-_ ]+$/"; //to replace all special characters (.*?!@#$&-_) from the end
$result = preg_replace($regex, "", $string);
Hier ist ein Beispiel, um zu verstehen, wann $regex = "/[.*?!@#$&-_ ]+$/";
eine Zeichenfolge angewendet wird
$string = "Some text........"; // $resul -> "Some text";
$string = "Some text.????"; // $resul -> "Some text";
$string = "Some text!!!"; // $resul -> "Some text";
$string = "Some text..!???"; // $resul -> "Some text";
Ich hoffe es ist hilfreich für dich.
Vielen Dank :-)
Das letzte Zeichen kann auf verschiedene Arten entfernt werden. Hier einige
rtrim ():
$ output = rtrim ($ string, '.');
Regulären Ausdruck
preg_replace ("/.$/", "", $ string);
substr () / mb_substr ()
echo mb_substr ($ string, 0, -1);
echo substr (trim ($ string), 0, -1);
substr () mit trim ()
echo substr (trim ($ string), 0, -1);
Verwenden Sie eine Kombination aus strrpos und substr , um die Position des letzten Punktzeichens zu ermitteln und zu entfernen, wobei alle anderen Zeichen intakt bleiben:
$string = "something here.";
$pos = strrpos($string,'.');
if($pos !== false){
$output = substr($string,0,$pos);
} else {
$output = $string;
}
var_dump($output);
// $output = 'something here';
Sie können die rtrim-Funktion von php verwenden, mit der Sie die Daten trimmen können, die an der letzten Position vorhanden sind.
Zum Beispiel :
$trim_variable= rtrim($any_string, '.');
Einfachster und schnellster Weg !!
Beispiel:
$columns = array('col1'=> 'value1', 'col2' => '2', 'col3' => '3', 'col4' => 'value4');
echo "Total no of elements: ".count($columns);
echo "<br>";
echo "----------------------------------------------<br />";
$keys = "";
$values = "";
foreach($columns as $x=>$x_value)
{
echo "Key=" . $x . ", Value=" . $x_value;
$keys = $keys."'".$x."',";
$values = $values."'".$x_value."',";
echo "<br>";
}
echo "----------------------Before------------------------<br />";
echo $keys;
echo "<br />";
echo $values;
echo "<br />";
$keys = rtrim($keys, ",");
$values = rtrim($values, ",");
echo "<br />";
echo "-----------------------After-----------------------<br />";
echo $keys;
echo "<br />";
echo $values;
?>
Ausgabe:
Total no of elements: 4
----------------------------------------------
Key=col1, Value=value1
Key=col2, Value=2
Key=col3, Value=3
Key=col4, Value=value4
----------------------Before------------------------
'col1','col2','col3','col4',
'value1','2','3','value4',
-----------------------After-----------------------
'col1','col2','col3','col4'
'value1','2','3','value4'
rtrim
viel einfacher vergessen vergessen ...!