@OndrejIvanic: У вас есть …для этого. Если вы удалите последнюю точку, а оставшаяся точка останется точкой, заголовок вопроса не будет иметь особого смысла, не так ли?
Аликс Аксель,
29
использование rtrim заменяет все "." в конце, а не только последний символ
Я предполагаю, что OP хочет удалить все '.' в конце, иначе зачем удалять только одну? ;)
Тор Валамо
2
да, я тоже об этом догадываюсь. просто следите за вопросом как можно ближе.
ghostdog74
2
Это намного лучше, слишком многие люди не понимают, что использование character_maskin в trimосновном удаляет любой экземпляр символа во всей строке
Брок Хенсли,
8
Чтобы удалить последний символ, только если это точка, и не прибегая к этому, preg_replaceмы можем просто рассматривать строку как массив символов и удалить последний символ, если это точка.
if ($str[strlen($str)-1]==='.')
$str=substr($str, 0, -1);
Это правильный ответ, так как другие будут удалять все завершающие символы, а не только последний. Но вы должны использовать ===вместо того, ==чтобы также проверять равенство типов
падаван Тони
3
Я знаю, что вопрос решен. Но, возможно, этот ответ будет кому-то полезен.
rtrim() - Убрать пробелы (или другие символы) с конца строки
ltrim() - Удаление пробелов (или других символов) из начала строки
trim() - Убрать пробелы (или другие символы) из начала и конца строки
Для удаления специальных символов из конца строки или Если строка содержит динамические специальные символы в конце, мы можем сделать это с помощью регулярного выражения.
preg_replace - Выполните поиск по регулярному выражению и замените
$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);
Вот несколько примеров, чтобы понять, когда $regex = "/[.*?!@#$&-_ ]+$/";применяется к строке
rtrim
многом другом ...!…
для этого. Если вы удалите последнюю точку, а оставшаяся точка останется точкой, заголовок вопроса не будет иметь особого смысла, не так ли?использование rtrim заменяет все "." в конце, а не только последний символ
$string = "something here.."; echo preg_replace("/\.$/","",$string);
источник
character_mask
in вtrim
основном удаляет любой экземпляр символа во всей строкеЧтобы удалить последний символ, только если это точка, и не прибегая к этому,
preg_replace
мы можем просто рассматривать строку как массив символов и удалить последний символ, если это точка.if ($str[strlen($str)-1]==='.') $str=substr($str, 0, -1);
источник
===
вместо того,==
чтобы также проверять равенство типовЯ знаю, что вопрос решен. Но, возможно, этот ответ будет кому-то полезен.
rtrim()
- Убрать пробелы (или другие символы) с конца строкиltrim()
- Удаление пробелов (или других символов) из начала строкиtrim()
- Убрать пробелы (или другие символы) из начала и конца строкиДля удаления специальных символов из конца строки или Если строка содержит динамические специальные символы в конце, мы можем сделать это с помощью регулярного выражения.
preg_replace
- Выполните поиск по регулярному выражению и замените$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);
Вот несколько примеров, чтобы понять, когда
$regex = "/[.*?!@#$&-_ ]+$/";
применяется к строке$string = "Some text........"; // $resul -> "Some text"; $string = "Some text.????"; // $resul -> "Some text"; $string = "Some text!!!"; // $resul -> "Some text"; $string = "Some text..!???"; // $resul -> "Some text";
Надеюсь, это будет вам полезно.
Благодарность :-)
источник
Я знаю, что вопрос в том, какой старый, но, возможно, мой ответ кому-то поможет.
$string = "something here..........";
ltrim удалит ведущие точки. например:-
ltrim($string, ".")
rtrim
rtrim($string, ".")
удалит конечные точки.trim
trim($string, ".")
удалит конечные и ведущие точки.вы также можете сделать это с помощью регулярного выражения
preg_replace would remove можно использовать для удаления точки / точек в конце
$regex = "/\.$/"; //to replace single dot at the end $regex = "/\.+$/"; //to replace multiple dots at the end preg_replace($regex, "", $string);
Надеюсь, это будет вам полезно.
источник
Последний символ можно удалить разными способами, вот несколько
rtrim()
$output = rtrim($string, '.');
Regular Expression
preg_replace("/\.$/", "", $string);
substr()
/mb_substr()
echo mb_substr($string, 0, -1); echo substr(trim($string), 0, -1);
substr()
с участиемtrim()
echo substr(trim($string), 0, -1);
источник
Используйте комбинацию strrpos и substr, чтобы получить позицию последнего символа точки и удалить его, оставив все остальные символы нетронутыми:
$string = "something here."; $pos = strrpos($string,'.'); if($pos !== false){ $output = substr($string,0,$pos); } else { $output = $string; } var_dump($output); // $output = 'something here';
источник
Вы можете использовать функцию rtrim php, которая позволяет обрезать данные, которые существуют в последней позиции.
Например :
$trim_variable= rtrim($any_string, '.');
Самый простой и быстрый способ !!
источник
Пример:
$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; ?>
Выход:
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'
источник