"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo determinar si una cadena termina con una subcadena específica en C++?

¿Cómo determinar si una cadena termina con una subcadena específica en C++?

Publicado el 2024-12-11
Navegar:751

How to Determine if a String Ends with a Specific Substring in C  ?

Determinación de terminaciones de cadenas en C

Una operación común en la manipulación de cadenas es comprobar si una cadena determinada concluye con otra. Esta funcionalidad es crucial en varias aplicaciones, incluido el procesamiento de texto, la coincidencia de patrones y el análisis de archivos.

En C, hay varias formas de determinar si una cadena termina con una subcadena específica. Un método eficaz implica utilizar la función std::string::compare, disponible en la biblioteca C estándar.

La función de comparación compara dos cadenas y devuelve un valor entero que representa el resultado. Al comparar la última parte de la cadena original con la posible subcadena final, podemos determinar si coinciden.

El siguiente código demuestra cómo implementar este enfoque:

#include 

bool hasEnding(const std::string& fullString, const std::string& ending) {
    if (fullString.length() >= ending.length()) {
        return (0 == fullString.compare(fullString.length() - ending.length(), ending.length(), ending));
    } else {
        return false;
    }
}

int main() {
    std::string test1 = "binary";
    std::string test2 = "unary";
    std::string test3 = "tertiary";
    std::string test4 = "ry";
    std::string ending = "nary";

    std::cout 

En este código, primero definimos una función hasEnding que toma dos cadenas como entrada. La función devuelve un booleano que indica si la primera cadena termina con la segunda.

Dentro de la función, comprobamos si la longitud de la primera cadena es mayor o igual a la longitud de la segunda cadena. De lo contrario, la función devuelve falso.

Si la verificación de longitud pasa, usamos comparar para comparar la última parte de la primera cadena con la segunda cadena. La función de comparación devuelve 0 si las dos cadenas son iguales, que es lo que verificamos para determinar si la primera cadena termina con la segunda.

La función principal prueba la función hasEnding con varias cadenas de entrada y genera los resultados.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3