«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как определить, заканчивается ли строка определенной подстрокой в ​​C++?

Как определить, заканчивается ли строка определенной подстрокой в ​​C++?

Опубликовано 11 декабря 2024 г.
Просматривать:385

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

Определение окончаний строк в C.

Одна из распространенных операций при манипуляциях со строками — проверка, завершается ли данная строка другой. Эта функциональность имеет решающее значение в различных приложениях, включая обработку текста, сопоставление с образцом и анализ файлов.

В C существует несколько способов проверить, заканчивается ли строка определенной подстрокой. Один из эффективных методов включает использование функции std::string::compare, доступной в стандартной библиотеке C.

Функция сравнения сравнивает две строки и возвращает целочисленное значение, представляющее результат. Сравнивая последнюю часть исходной строки с потенциальной конечной подстрокой, мы можем определить, совпадают ли они.

Следующий код демонстрирует, как реализовать этот подход:

#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 

В этом коде мы сначала определяем функцию hasEnding, которая принимает на вход две строки. Функция возвращает логическое значение, указывающее, заканчивается ли первая строка второй.

Внутри функции мы проверяем, превышает ли длина первой строки длину второй строки или равна ей. Если нет, функция возвращает false.

Если проверка длины пройдена, мы используем сравнение для сравнения последней части первой строки со второй строкой. Функция сравнения возвращает 0, если две строки равны. Именно это мы и проверяем, чтобы определить, заканчивается ли первая строка второй.

Функция main проверяет функцию hasEnding с несколькими входными строками и выводит результаты.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3