0Pricing
PHP Academy · Lección

Búsqueda y reemplazo en strings

Busque y reemplace texto con strpos, str_replace y str_contains.

Búsqueda y reemplazo en strings es una lección gratuita de PHP Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de PHP Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de PHP Academy incluye 4 lecciones en total.

Búsqueda de texto en cadenas

PHP ofrece muchas funciones para localizar subcadenas. Funciones principales:

  • strpos() — busca la posición de la primera aparición
  • strrpos() — busca la posición de la última aparición
  • str_contains() — disponible desde PHP 8, comprueba si existe
  • str_starts_with() / str_ends_with() — disponibles desde PHP 8

strpos()

Devuelve la posición (con índice inicial 0) de la primera aparición, o false si no se encuentra:

<?php
$str = 'the quick brown fox';

$pos = strpos($str, 'brown');
echo $pos;  // 10

// Always use === to check for false (0 is also falsy!)
if (strpos($str, 'quick') !== false) {
    echo 'Found!';
}

str_contains, str_starts_with, str_ends_with

PHP 8 añade estas funciones booleanas sencillas:

<?php
$email = 'user@example.com';

var_dump(str_contains($email, '@'));        // true
var_dump(str_starts_with($email, 'user'));  // true
var_dump(str_ends_with($email, '.com'));    // true
var_dump(str_ends_with($email, '.org'));    // false

str_replace()

Reemplace todas las apariciones de una cadena buscada por otra de reemplazo:

<?php
$template = 'Hello {name}, your order #{id} is ready.';

$result = str_replace(
    ['{name}', '{id}'],
    ['Alice',  '4521'],
    $template
);

echo $result;
// Hello Alice, your order #4521 is ready.

str_ireplace() — sin distinguir mayúsculas y minúsculas

str_ireplace() funciona como str_replace(), pero no distingue entre mayúsculas y minúsculas:

<?php
$text = 'PHP is great. php is powerful. PHP is fun.';

$result = str_ireplace('php', 'PHP 8', $text);
echo $result;
// PHP 8 is great. PHP 8 is powerful. PHP 8 is fun.

substr_replace()

Reemplace una parte de una cadena indicando su posición y longitud:

<?php
$str = 'Hello World';

echo substr_replace($str, 'PHP', 6, 5);
// Hello PHP

// Replace from end
echo substr_replace($str, '!', -1);
// Hello Worl!

substr_count()

Cuente cuántas veces aparece una subcadena:

<?php
$text = 'to be or not to be';

echo substr_count($text, 'be');   // 2
echo substr_count($text, 'to');   // 2
echo substr_count($text, 'or');   // 1

preg_replace() — reemplazo con expresiones regulares

Utilice un patrón de expresión regular para realizar reemplazos complejos:

<?php
$html = '<p>Hello <b>World</b></p>';

// Strip HTML tags
$plain = preg_replace('/<[^>]+>/', '', $html);
echo $plain;  // Hello World

// Replace multiple spaces with one
$spaced = 'too   many    spaces';
echo preg_replace('/\s+/', ' ', $spaced);
// too many spaces

htmlspecialchars para prevenir XSS

Escapе siempre los datos introducidos por el usuario antes de mostrarlos en HTML para prevenir ataques XSS:

<?php
$userInput = '<script>alert("hacked")</script>';

// Dangerous:
echo $userInput; // executes script!

// Safe:
echo htmlspecialchars($userInput, ENT_QUOTES, 'UTF-8');
// &lt;script&gt;alert(&quot;hacked&quot;)&lt;/script&gt;

Contar reemplazos

str_replace() puede informar de cuántas sustituciones se realizaron mediante un cuarto parámetro opcional:

<?php
$text = 'cat and cat and cat';
$count = 0;
$result = str_replace('cat', 'dog', $text, $count);

echo $result;  // dog and dog and dog
echo $count;   // 3

Relleno de cadenas

Rellene una cadena hasta alcanzar la longitud deseada para formatearla:

<?php
echo str_pad('42', 8);           // '42      ' (right-pad)
echo str_pad('42', 8, '0', STR_PAD_LEFT);  // '000042'
echo str_pad('PHP', 7, '-', STR_PAD_BOTH); // '--PHP--'

Comprobación rápida

¿Qué función de PHP 8 comprueba si una cadena empieza por un prefijo determinado?

Repaso: búsqueda y reemplazo

Funciones principales:

  • strpos/strrpos — buscan una posición (utilice la comprobación === false)
  • str_contains/starts_with/ends_with — funciones booleanas de PHP 8
  • str_replace/str_ireplace — sustitución sencilla
  • preg_replace — reemplazo basado en expresiones regulares
  • htmlspecialchars — escapa datos para mostrarlos en HTML

Preguntas frecuentes

¿La lección «Búsqueda y reemplazo en strings» es gratis?

Sí — el texto completo de «Búsqueda y reemplazo en strings» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de PHP Academy, actualiza a CoddyKit PRO. El curso de PHP Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Búsqueda y reemplazo en strings»?

Busque y reemplace texto con strpos, str_replace y str_contains. Practicas PHP Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar PHP Academy?

No se requiere experiencia previa. PHP Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Búsqueda y reemplazo en strings»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de PHP Academy?

Sí. Cada lección de PHP Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Fundamentos de strings y concatenación
  2. Búsqueda y reemplazo en strings
  3. Funciones de subcadenas y relleno
  4. División y unión de cadenas
← Volver a PHP Academy