Repository navigation
Expand file tree
/
Copy pathFuncionesCadena.php
More file actions
222 lines (196 loc) · 9.77 KB
/
Copy pathFuncionesCadena.php
File metadata and controls
222 lines (196 loc) · 9.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
<?php
echo "<b>Funciones de cadena</b><br>";
strstr ($cadena, $cadBusq,false); // R DE REVERSE (Del final al principio). Ultima coincidencia del primer caracter. El booleano en false devuelve lo siguiente a la cadena buscada
/*Devuelve desde la primera aparición de la cadena (incluyéndola -
(alse) hasta el fnal. Busca coincidencia total. Case-sensitve.*/
strstr("carmenduran@domenicoscarlat.es","@domenico"); // @domenicoscarlat.es
strrchr ($cadena, $carBusq);
/*Devuelve desde la últma aparición del 1er carácter (incluido) hasta
el fnal (Sólo se utliza el primer carácter). Case-sensitve*/
strrchr ("Esto es muy bonito","so"); // s muy bonito
stristr($cadena, $carBusq);
//Igual que strstr pero no es case-sensitve.
//----------------------------------------------
strpos($cad1, $cad2[7]); //Corchetes es desplazamiento. A partir de donde buscar
//Busca la primera posición de aparición de una cadena a partr de desplz (por defecto 0). Coincidencia total.
//Si no la encuentra devuelve FALSE
strpos ("Este espacio es muy bonito","es",7); // 13
strrpos ($cadena, $cadena [2])."<br></br>";
//Devuelve la posición de la últma aparición o FALSE. Coincidencia total
//----------------------------------------------
strrpos ("Este espacio es muy bonito","es")."<br></br>"; // 13*/
//----------------------------------------------
strspn ($cadena, $máscara, $comienzo, $longitud); //IMP
/*Devuelve la longitud del segmento inicial (para cuando encuentra fuera de la mascara)de un string que consiste
únicamente en caracteres contenidos dentro de una máscara dada.
Case-sensitve*/
strspn ("Este espacio es muy bonito","Estela")."<br></br>"; // 4
strspn ("Este espacio es muy bonito","Estado")."<br></br>"; // 3
strspn ("Este espacio es muy bonito","el")."<br></br>";// 0
//----------------------------------------------
strcspn ($cadena, $máscara, $comienzo, $longitud); //IMP
/*Devuelve la longitud de la subcadena más larga que está formada
sólo por caracteres no contenidos en la máscara. Case-sensitve*/
//----------------------------------------------
strcmp ($cad1, $cad2);
/*Compara dos cadenas (case-sensitve) y devuelve:
> 0, si cad1>cad2
< 0, si cad1<cad2
0, si ambas cadenas son iguales.*/
//----------------------------------------------
strcasecmp ($cad1, $cad2);
//Igual que strcmp() pero insensible a mayúsculas y minúsculas.
strncmp ($cad1, $cad2,$longitud); //Sólo compara los longitud primeros caracteres
strcmp("Hola","hola")."<br></br>"; //→ no iguales
strcasecmp("Hola","hola")."<br></br>"; //→ iguales
strncmp("Paco","Paca",4)."<br></br>"; //→ distintos
strncasecmp("Paco","Paca",2)."<br></br>"; //→ iguales
//----------------------------------------------
strnatcmp ($cad1, $cad2);
/*Comparación "natural“
con strcmp(10,2) 10 es menor que 2
con strnatcmp(10,2) 10 es mayor que 2*/
echo strnatcmp ($cad1, $cad2);
//----------------------------------------------
/*int strlen (strinu $cadena);
//Devuelve el número de caracteres que contene una cadena.*/
$cadena="Hola que tal";
echo strlen($cadena)."<br></br>"; // 12*/ Como .length de Java
//----------------------------------------------
substr ($cadena, $inicio, $lon);
//Devuelve una subcadena de longitud $lon a partr de la posición $inicio de la cadena $cadena.
$cad="PATITOS";
echo substr($cad,2)."<br></br>"; // TITOS
echo substr($cad,2,3)."<br></br>"; // TIT
echo substr($cad,-2)."<br></br>"; // OS
echo substr($cad,2,-3)."<br></br>"; // TI 2º nº neuatio caracteres del fnal que no se quitan*/
//----------------------------------------------
substr_replace ($cadena, $reemplazo, $ini, $charsABorrar);
/*Devuelve una cadena, resultado de reemplazar con el string
dado en reemplazo, una copia de cadena empezando por el
parámetro inicio hasta (opcionalmente) charsABorrar o hasta el
fnal de cadena.*/
//La cadena original no sufre ninguna modifcación. Case sensitve
$texto="Hola a todos los chicos";
echo ($texto."<br></br>");
$texto2=substr_replace($texto,"todas", 0); // todas
echo ($texto2."<br></br>");
$texto2=substr_replace($texto,"todas", 7); // Hola a todas
echo ($texto2."<br></br>");
$texto2=substr_replace($texto,"todas", 7,2);// Hola a todasdos los chicos*/
echo ($texto2."<br></br>");
//----------------------------------------------
//str_replace ($cadBusq,$cadReempl,$texto);
/*Devuelve una cadena resultado de susttuir $cadBusq en $texto por $cadReempl. La cadena original no sufre ninguna modifcación.*/
//----------------------------------------------
//strtr ($cadena, $cadBus, $cadRee);
/*Susttuye carácter a carácter. La cadena original no sufre ninguna modifcación.
En lugar de dos argumentos se puede pasar un array.*/
echo strtr("Hola a todos los presentes aquí","aeiou", "AEIOU")."<br>"; //HOlA A tOdOs lOs prEsEntEs AquÍ*/
echo strtr("Holá à todos ","áà","aa")."<br>"; //Sale algo loco. Ocupa dos caracteres. holaa a? todos
//----------------------------------------------
//substr_count ($cadena, $patron, $inicio, $longitud);
/*Devuelve el número de apariciones de $patron dentro de la cadena $cadena, (opcionalmente) empezando desde la posición $inicio hasta $longitud. Es case-sensitve.*/
$cad="Hola a todos los presentes";
echo substr_count($cad,"los")."<br></br>"; // 0*/ Case Sensitive
//----------------------------------------------
//mixed count_chars strinu ($strinu [, int $mode 0 ]);
/*Devuelve información (mixto--> booleano, string,etc) sobre los caracteres usados en una cadena
Cuenta el número de apariciones de cada byte-value (0..255) en string y
lo devuelve de varias maneras en función del parámetro opcional
mode.*/
print_r(count_chars($cad,1));
//----------------------------------------------
rtrim ($cadena, $listaChar);
/*Elimina los espacios en blanco y caracteres de fn de línea {“ “,
”\n”, ”\t”, ”\r”, ”\0”, ”\x0B” } del final de la cadena. Permite
incluir una lista $listaChar con los caracteres a eliminar del fnal. Devuelve la cadena modifcada.
chop ($cadena) --> No se que carajos es esto
ltrim (), trim ()
Eliminan caracteres a la izquierda (ltrim) o por ambos lados de una
cadena.*/
//----------------------------------------------
str_pad($cadena, $long, $cadenaRelleno);
/*Rellena una cadena (por un lado u otro) con un carácter de relleno (por defecto, es el
espacio en blanco) hasta obtener $long caracteres en total.
Si $long es negatvo o menor que la longitud de la cadena no
rellena.
Parámetros: STR_PAD_RIGHT, STR_PAD_LEFT, STR_PAD_BOTH
Indican la opción para rellenar.*/
//----------------------------------------------
strtolower ($cad) /strtoupper ($cad);
/*Devuelve una string con todos los caracteres alfabéticos
convertidos a minúsculas/ mayúsculas.*/
//----------------------------------------------
ucfirst ($texto);
// Pone en mayúscula solo la 1ª letra de $texto
ucwords ($texto);
//Pone en mayúscula la 1ª letra de cada palabra contenida en $texto.
//----------------------------------------------
addslashes ($cadena);
//Antepone barras de escape \ a: ( " ), ( ' ) , el NULL (el byte nulo) y ( \).
stripslashes ($cadena);
//Quita barras de escape de: ( \' ) .
nl2br ($cadena);
//Todos los saltos de línea serán convertidos a etiquetas <br />.
echo nl2br($cadena['Hola/nQue tal']);
addcslashes ($cadena, $listcar);
//Escapa cualquier carácter de $listcar.
stripcslashes ($cadena);
// Contraria a addcslashes()
//----------------------------------------------
quotemeta ($cadena);
//----------------------------------------------
//Coloca una barra \ delante de : . , \, +, *, ? , [, ^, ] , , $, )
//string htmlspecialchars($cadena,$flags,$codigo);
//Traducen a entidades html
/*Las traducciones realizadas son:
&' se convierte en '&'
‘ “ ‘ (comillas dobles) se convierte en '"‘
cuando ENT_NOQUOTES no está establecido.
“ ‘ " (comilla simple) se convierte en ''' (o ') sólo
cuando ENT_QUOTES está establecido.
'<' (menor que) se convierte en '<'
'>' (mayor que) se convierte en '>‘*/
//----------------------------------------------
$cadenita="Esto es un ejemplo de cadena";
strtok ($cadenita, $delimitador);
$trozo=strtok($cadenita,"\n\t");
echo $trozo; //Esto
//Divide una cadena en subcadenas separadas por $delimitador.
//Devuelve la primera subcadena obtenida. Invocar desde un bucle para dividir toda una cadena.
strtok("hola que tal"," "); // → divide en palabras
//----------------------------------------------
//chunk_split ($cadena[,$long[,$separador]]);
//Inserta la cadena separador cada $long caracteres
chunk_split("hola que tal",3,'-'); // → hol-a q-ue -tal*/
//----------------------------------------------
//array str_split ($cadena[$split_lenth,1]);
//Convierte un string en un array.
/*Si el parámetro opcional split_length se específca, el array
devuelto será separado en fragmentos los cuales cada uno
tendrá una longitud de split_length, de otra manera cada
fragmento tendrá una longitud de un carácter.*/
//----------------------------------------------
//array explode ($delimiter, $cadena [$limit]);
//Parte la cadena en función de $delimiter y crea un array con los elementos.
$dir_correo="prueba@yahoo.com.ar";
$parte_array=explode("@",$dir_correo);
echo $parte_array[0]; // prueba
echo $parte_array[1]; // yahoo.com.ar
//----------------------------------------------
//string implode ($delimitador,$matriz);
//Convierte un array en una cadena de caracteres separando sus elementos con la cadena indicada en $delimitador.
$matriz=array(7,'julio',2011);
echo implode(' de ',$matriz);
$unidos=implode("@",$parte_array);
//----------------------------------------------
/*flter_iar $iariable, $fltro)
Valida el contenido de la variable según el fltro indicado en la
constante $fltro:
Algunos tpos de fltro:
FILTER_VALIDATE_EMAIL: Valida emails según RFC 822
FILTER_VALIDATE_FLOAT: Valida números reales
FILTER_VALIDATE_IP : Valida IP’s
FILTER_VALIDATE_URL : Valida URL’s según RFC 2396*/
?>