¿Cómo eliminar el carácter principal de una cadena?
Tengo una cadena de entrada como:
$str = ':this is a applepie :) ';
¿ Cómo puedo eliminar el primero que ocurre :
con PHP?
Salida deseada:this is a applepie :)
La substr()
función probablemente te ayudará aquí:
$str = substr($str, 1);
Las cadenas se indexan a partir de 0, y el segundo parámetro de esta función toma el inicio de corte. Así que hazlo 1 y el primer carácter desaparecerá.
Para eliminar cada :
desde el principio de una cadena, puedes usar ltrim :
$str = '::f:o:';
$str = ltrim($str, ':');
var_dump($str); //=> 'f:o:'
Utilice substr :
$str = substr($str, 1); // this is a applepie :)
Tiempo de ejecución para las 3 respuestas:
Retire la primera letra reemplazando el caso.
$str = "hello";
$str[0] = "";
// $str[0] = false;
// $str[0] = null;
// replaced by �, but ok for echo
Tiempo de ejecución para 1.000.000 de pruebas: 0.39602184295654
segundos
Eliminar la primera letra con substr()
$str = "hello";
$str = substr($str, 1);
Tiempo de ejecución para 1.000.000 de pruebas: 5.153294801712
segundos
Elimina la primera letra con ltrim()
$str = "hello";
$str= ltrim ($str,'h');
Tiempo de ejecución para 1.000.000 de pruebas: 5.2393000125885
segundos
Elimina la primera letra con preg_replace()
$str = "hello";
$str = preg_replace('/^./', '', $str);
Tiempo de ejecución para 1.000.000 de pruebas: 6.8543920516968
segundos
La respuesta aceptada:
$str = ltrim($str, ':');
funciona pero eliminará varios :
cuando haya más de uno al principio.
$str = substr($str, 1);
eliminará cualquier carácter desde el principio.
Sin embargo,
if ($str[0] === ':')
$str = substr($str, 1);
funciona perfectamente.