| |
|
|
| |
-
PHP - Elementos estructurales - Segmentar cadenas de caracteres
-
PHP dispone de un grupo de funciones para segmentar cadenas de caracteres.
| Función |
Descripción |
| split( ) |
Segmenta una cadena de caracteres en palabras con una expresión regular |
| spliti( ) |
Como split( ), pero sin diferenciar entre mayúsculas y minúsculas |
| str_split( ) |
Transforma una cadena de caracteres en una matriz. Puede especificarse el tamaño de los elementos |
| preg_split( ) |
Segmenta una cadena, devolviendo una matriz de subcadenas |
| explode( ) |
Separa una cadena utilizando otra cadena, devolviendo una matriz |
| implore( ) |
Une los elementos de una matriz en una cadena de caracteres |
Las funciones splits( ) y spliti( ), dividen una cadena de caracteres y devuelven una matriz.
Por su parte, explode( ), divide una cadena de caracteres utilizando un separador, devolviendo una matriz.
La función implore, toma una matriz como argumento e integra sus elementos en una cadena de caracteres.
Función strtok( )
Esta función segmenta una cadena de caracteres en varias cadenas, llamadas "tokens". Los tokens se crean al elegir
un carácter, el cual actúa como separador. La mayoría de los tokens son palabras separadas por espacios en blanco.
Al llamar la función, se utilizan dos argumentos; la cadena a dividir y los delimitadores, devolviendo la cadena separada. Al llamar
nuevamente la función, no es necesario utilizar el primer argumento, ya que la función realiza un seguimiento de las acciones ejecutadas.
De pretenderse dividir otra cadena, entonces debe utilizar los dos argumentos, lo que provocará que el proceso se inicie desde el principio.
Devuelve un valor booleano "FALSE", "0" o " ".
Ejemplo:
<html>
<head>
<title>función levenshtein( )</title>
</head>
<body bgcolor="#eceaf3">
<font face = "verdana" size='+1'>
<pre>
<?php
$cadena="Pedro Moreno:21/08/85:Caracas:Venezuela";
$delimitador=":,/ ";
$token=strtok($cadena,$delimitador);
$n=1;
while($token)
{
echo"Palabra $n: <b>$token</b><br>";
$token=strtok($delimitador);
$n++;
}
?>
</pre>
</font>
</body>
</html>
Función str_repeat( )
Esta función repite una cadena de caracteres un número determinado de veces. El primer argumento, es la cadena de caracteres
y el segundo, es el número de veces que ha de repetirse.
El segundo argumento, debe ser mayor o igual a 0, donde 0, devuelve una cadena vacía.
Ejemplo:
<html>
<head>
<title>función levenshtein( )</title>
</head>
<body bgcolor="#eceaf3">
<font face = "verdana" size='+1'>
<pre>
<?php
print str_repeat("El primer regalo es el mejor!<br>", 10);
?>
</pre>
</font>
</body>
</html>
Funciones trim( ), ltrim( ), chop( ), rtrim( )
La función trim( ), elimina los caracteres especificados (espacios en blanco u otro carácter) en una cadena de caracteres. El
tercer argumento de esta función, consiste en una lista de caracteres, los cuales indican los caracteres a eliminar de la cadena.
Las funciones ltrim( ) y rtrim( ), actuan como trim( ), con la diferencia de que ltrim( ), solo recorta la parte izquierda de la cadena, mientras
que rtrim( ), lo hace en la parte derecha.
La función chop( ) hace lo mismo que la rtrim( ).
Sin el segundo argumento, la función trim( ) elimina los espacios en blanco que se especifican a continuación:
| Espacio en blanco |
Descripción |
| " " |
Espacio en blanco |
| "\t" |
Tabulador |
| "\n" |
Salto de línea |
| "\r" |
Retorno del caro (ENTER o RETURN) |
| "\0" |
NULL |
| "\x0B" |
Tabulador vertical |
<html>
<head>
<title>función trim( )</title>
</head>
<body bgcolor="#eceaf3">
<font face = "verdana" size='+1'>
<pre>
<?php
$cadena="***El bueno de Sancho****";
$cadena1="\t\tSacar un conejo del sombre, no es complicado\n\n";
$cadena2="Tercera cadena!";
$eliminar=trim("$cadena","*");
$eliminar1=ltrim("$cadena1");
$eliminar2=rtrim("$cadena1");
print"$cadena<br>";
print"$eliminar<br>";
print"$cadena1<br>";
print"$eliminar2<br>";
print"$cadena2<br>";
?>
</pre>
</font>
</body>
</html>
Función str_pad( )
Esta función agrega caracteres a una cadena. Por defecto, la cadena se alarga añadiendo espacios a la derecha.
El primer argumento, es la cadena que se requiere alargar. El segundo argumento, pad_length, es la cantidad de espacios a agregar. El tercer
argumento, indica a que lado de la cadena deben agregarse los espacios; a la derecha, a la izquierda o a ambos lados.
El cuarto argumento, pad_type, indica el carácter que debe utilizarse para alargar la cadena.
Dirección en la que deben agregarse los espacios en la cadena:
| Función |
Descripción |
| STR_PAD_RIGHT |
Agrega elementos en la parte derecha. Es la acción por defecto |
| STR_PAD_LEFT |
Agrega elementos en la parte izquierda de la cadena |
| STR_PAD_BOTH |
Agrega elementos a ambos lados de la cadena |
Ejemplo:
<html>
<head>
<title>función trim( )</title>
</head>
<body bgcolor="#eceaf3">
<font face = "verdana" size='+1'>
<pre>
<?php
$nombre="Helena de troya";
$origen="historia antigua";
echo str_pad("nombre: ", 15) . $nombre,"<br>";
echo str_pad("Epoca: ",15) . $origen,"<br>";
echo"<br>";
$cadena="Tabla de contenido";
echo str_pad($cadena, 26, "-=",STR_PAD_BOTH), "<br>";
?>
</pre>
</font>
</body>
</html>
Funciones str_replace() y stri_replace( )
La función str_replace( ) permite buscar una cadena de caracteres en un bloque de texto y sustituirla por otra cadena. Devuelve una cadena o
una matriz con las sustituciones donde se han encontrado la cadena de caracteres buscada. Con un cuarto argumento, la función devuelve el número
de veces que se repite la cadena en el bloque de texto.
La deferencia entre las dos funciones, str_replace( ) y stri_replace( ), es que la segunda no distingue entre mayúsculas y minúsculas.
Ejemplo:
<html>
<head>
<title>función trim( )</title>
</head>
<body bgcolor="#eceaf3">
<font face = "verdana" size='+1'>
<pre>
<?php
$texto="Canta, oh diosa, la colera del Pelida <b>Agamenon</b>; cólera funesta que causó
nfinitos males a los aqueos y precipitó al <br>Hades muchas almas valerosas de héroes, a
uienes hizo presa de perros y pasto de aves- desde que se separaron disputando el <br>Atrida,
ey de hombres, y el divino <b>Agamenon</b>.";
$modificar=str_replace("Agamenon", "Aquiles",$texto);
print"Texto original:<br>$texto<br>\n\n";
print"$modificar";
?>
</pre>
</font>
</body>
</html>
Función strpos( )
Esta función devuelve la posición de la primera coincidencia de caracteres o subcadena, dentro de una cadena de caracteres. Esta es la posición
índice de la subcadena que empieza desde 0, comenzando a contar a la izquierda hasta encontrar el carácter objetivo. Si no se encuentra nada, la función
devuelve la valor booleano "FALSE".
El tercer argumento, un número, indica la posición a partir de la cual comenzará la búsqueda. No obstante, se cuentan los caracteres desde el
comienzo de la cadena.
Ejemplo:
<html>
<head>
<title>función trim( )</title>
</head>
<body bgcolor="#eceaf3">
<font face = "verdana" size='+1'>
<pre>
<?php
$correoe="johndoe@midominio.com";
$posicion=strpos($correoe,'@');
print"La posicion inicial del simbolo '@' en <b>$correoe</b> : $posicion";
$posicion=strpos($correoe,'.com');
print"<br>La posicion de inicio de '.com' en <b>$correoe</b>: $posicion";
?>
</pre>
</font>
</body>
</html>
Funciones strrpos( ) y strripos( )
La función strrpos( ) devuelve la posición de la ultima coincidencia de un carácter en una cadena. La función strripos( ) hace los mismo,
con la diferencia que no distingue entre mayúsculas y minúsculas.
Ejemplo:
<html>
<head>
<title>función trim( )</title>
</head>
<body bgcolor="#eceaf3">
<font face = "verdana" size='+1'>
<pre>
<?php
$cadena='usr/local/bin.<br>';
$var=strrpos("$cadena", "/");
print"$cadena";
print"$var";
?>
</pre>
</font>
</body>
</html>
Función strstr( )
Esta función busca la primera coincidencia en una cadena de caracteres.
Devuelve una parte de la cadena de caracteres o FALSE, si no encuentra coincidencia.
Ejemplo:
<html>
<head>
<title>función strstr( )</title>
<body bgcolor="#eceaf3">
<font face = "verdana" size='+1'>
<pre>
<?php
$correoe='webmaster@netzweb.net';
$dominio=strstr($correoe, '@');
print"Dominio:\t\t\t$dominio" . "<br>";
$usuario=strstr($correoe, '@', true);
print"nombre del usuario:\t\t$usuario";
?>
</pre>
</font>
</body>
</html>
 |
|
Ultima actualisación: Tue, 24 ▪ May ▪ 2011
|
|
|
|