Метод str.isalpha() в Python, строка состоит только из букв
Проверяет, что строка состоит только из буквенных символов
Синтаксис:
str.isalpha()
Внимание! Ссылки для тех, кто ищет:
- как можно проверить наличие/вхождение определенного символа/буквы/подстроки в строке,
- узнать порядковый индекс определенного символа/буквы/подстроки в строке,
- сколько раз встречается определенный символ/буква/подстрока в строке.
Параметры:
Возвращаемое значение:
- bool , True — если строка содержит только буквы
Описание:
Метод строки str.isalpha() возвращает True , если все символы в строке str являются буквенными и есть хотя бы один символ (строка не пустая и не состоит из одного пробела), в противном случае False .
Буквенные символы — это символы, определенные в базе данных символов Юникода как “буква”. То есть, те символы, у которых общее свойство категории является одним из Lm , Lt , Lu , Ll или Lo . Обратите внимание, что это определение отличается от понятия “Алфавитный”, определенного в стандарте Unicode.
Примеры определения, что строка состоит только из буквенных символов.
>>> ''.isalpha() # False >>> ' '.isalpha() # False >>> '123'.isalpha() # False >>> 'abcABC'.isalpha() # True >>> '123abc'.isalpha() # False >>> '123 abc'.isalpha() # False >>> '123-abc'.isalpha() # False
- ОБЗОРНАЯ СТРАНИЦА РАЗДЕЛА
- Метод str.capitalize(), первая буква в строке заглавная
- Метод str.casefold(), сворачивает регистр строки
- Метод str.center(), выравнивает строку по центру
- Метод str.count(), считает совпадения в строке
- Метод str.encode(), преобразует строку в байты
- Метод str.endswith(), совпадение с концом строки
- Метод str.expandtabs(), меняет табуляцию на пробел
- Метод str.find(), индекс первого совпадения в строке
- Метод str.format(), форматирует строку
- Метод str.format_map()
- Метод str.index(), индекс первого совпадения подстроки
- Метод str.isalnum(), строка состоит из цифр и букв
- Метод str.isalpha(), строка состоит только из букв
- Метод str.isascii(), все символы в строке являются ASCII
- Метод str.isdecimal(), проверяет строку на десятичное число
- Метод str.isdigit(), строка состоит только из цифр
- Метод str.isidentifier() проверяет строку на идентификатор Python
- Метод str.islower( ), проверяет строку на нижний регистр
- Метод str.isnumeric(), проверяет строку на числовые символы
- Метод str.isprintable(), проверяет на доступность для печати
- Метод str.isspace(), является ли строка пробелом
- Метод str.istitle(), проверяет наличие заглавных букв в словах
- Метод str.isupper(), проверяет строку на верхний регистр
- Метод str.join(), объединяет список строк
- Метод str.ljust(), ровняет строку по левому краю
- Метод str.lower(), строку в нижний регистр
- Метод str.lstrip(), обрезает символы в начале строки
- Метод str.maketrans(), таблица символов для str.translate()
- Метод str.partition(), делит строку по первому совпадению
- Метод str.removeprefix(), удаляет префикс строки
- Метод str.removesuffix(), удаляет суффикс строки
- Метод str.replace(), меняет подстроку/символ в строке
- Метод str.rfind(), индекс последнего совпадения подстроки
- Метод str.rindex(), индекс последнего совпадения в строке
- Метод str.rjust(), ровняет строку по правому краю
- Метод str.rpartition(), делит строку по последнему совпадению
- Метод str.rsplit(), делит строку справа
- Метод str.rstrip(), обрезает символы на конце строки
- Метод str.split(), делит строку по подстроке
- Метод str.splitlines(), делит текст по символу ‘\n’
- Метод str.startswith(), совпадение с началом строки
- Метод str.strip(), обрежет строку с обоих концов
- Метод str.swapcase(), сменит регистр символов в строке
- Метод str.title(), каждое слово с заглавной буквы
- Метод str.translate(), транслирование строки
- Метод str.upper(), переведет строку в верхний регистр
- Метод str.zfill(), дополнит строку нулями
- Форматирование строк в стиле printf
- F-string. Форматированные строки
Как проверить строку на наличие символов python
Рассмотрим основные методы строк, которые мы можем применить в приложениях:
- isalpha() : возвращает True, если строка состоит только из алфавитных символов
- islower() : возвращает True, если строка состоит только из символов в нижнем регистре
- isupper() : возвращает True, если все символы строки в верхнем регистре
- isdigit() : возвращает True, если все символы строки — цифры
- isnumeric() : возвращает True, если строка представляет собой число
- startswith(str) : возвращает True, если строка начинается с подстроки str
- endswith(str) : возвращает True, если строка заканчивается на подстроку str
- lower() : переводит строку в нижний регистр
- upper() : переводит строку в вехний регистр
- title() : начальные символы всех слов в строке переводятся в верхний регистр
- capitalize() : переводит в верхний регистр первую букву только самого первого слова строки
- lstrip() : удаляет начальные пробелы из строки
- rstrip() : удаляет конечные пробелы из строки
- strip() : удаляет начальные и конечные пробелы из строки
- ljust(width) : если длина строки меньше параметра width, то справа от строки добавляются пробелы, чтобы дополнить значение width, а сама строка выравнивается по левому краю
- rjust(width) : если длина строки меньше параметра width, то слева от строки добавляются пробелы, чтобы дополнить значение width, а сама строка выравнивается по правому краю
- center(width) : если длина строки меньше параметра width, то слева и справа от строки равномерно добавляются пробелы, чтобы дополнить значение width, а сама строка выравнивается по центру
- find(str[, start [, end]) : возвращает индекс подстроки в строке. Если подстрока не найдена, возвращается число -1
- replace(old, new[, num]) : заменяет в строке одну подстроку на другую
- split([delimeter[, num]]) : разбивает строку на подстроки в зависимости от разделителя
- partition(delimeter) : разбивает строку по разделителю на три подстроки и возвращает кортеж из трех элементов — подстрока до разделителя, разделитель и подстрока после разделителя
- join(strs) : объединяет строки в одну строку, вставляя между ними определенный разделитель
Например, если мы ожидаем ввод с клавиатуры числа, то перед преобразованием введенной строки в число можно проверить, с помощью метода isnumeric() введено ли в действительности число, и если так, то выполнить операцию преобразования:
string = input("Введите число: ") if string.isnumeric(): number = int(string) print(number)
Проверка, начинается или оканчивается строка на определенную подстроку:
file_name = "hello.py" starts_with_hello = file_name.startswith("hello") # True ends_with_exe = file_name.endswith("exe") # False
Удаление пробелов в начале и в конце строки:
string = " hello world! " string = string.strip() print(string) # hello world!
Дополнение строки пробелами и выравнивание:
print("iPhone 7:", "52000".rjust(10)) print("Huawei P10:", "36000".rjust(10))
iPhone 7: 52000 Huawei P10: 36000
Поиск в строке
Для поиска подстроки в строке в Python применяется метод find() , который возвращает индекс первого вхождения подстроки в строку и имеет три формы:
- find(str) : поиск подстроки str ведется с начала строки до ее конца
- find(str, start) : параметр start задает начальный индекс, с которого будет производиться поиск
- find(str, start, end) : параметр end задает конечный индекс, до которого будет идти поиск
Если подстрока не найдена, метод возвращает -1:
welcome = "Hello world! Goodbye world!" index = welcome.find("wor") print(index) # 6 # поиск с 10-го индекса index = welcome.find("wor",10) print(index) # 21 # поиск с 10 по 15 индекс index = welcome.find("wor",10,15) print(index) # -1
Замена в строке
Для замены в строке одной подстроки на другую применяется метод replace() :
- replace(old, new) : заменяет подстроку old на new
- replace(old, new, num) : параметр num указывает, сколько вхождений подстроки old надо заменить на new. По умолчанию num равно -1, что соответствует первой версии метода и приводит к замене всех вхождений.
phone = "+1-234-567-89-10" # замена дефисов на пробел edited_phone = phone.replace("-", " ") print(edited_phone) # +1 234 567 89 10 # удаление дефисов edited_phone = phone.replace("-", "") print(edited_phone) # +12345678910 # замена только первого дефиса edited_phone = phone.replace("-", "", 1) print(edited_phone) # +1234-567-89-10
Разделение на подстроки
Метод split() разбивает строку на список подстрок в зависимости от разделителя. В качестве разделителя может выступать любой символ или последовательность символов. Данный метод имеет следующие формы:
- split() : в качестве разделителя используется пробел
- split(delimeter) : в качестве разделителя используется delimeter
- split(delimeter, num) : параметр num указывает, сколько вхождений delimeter используется для разделения. Оставшаяся часть строки добавляется в список без разделения на подстроки
text = "Это был огромный, в два обхвата дуб, с обломанными ветвями и с обломанной корой" # разделение по пробелам splitted_text = text.split() print(splitted_text) print(splitted_text[6]) # дуб, # разбиение по запятым splitted_text = text.split(",") print(splitted_text) print(splitted_text[1]) # в два обхвата дуб # разбиение по первым пяти пробелам splitted_text = text.split(" ", 5) print(splitted_text) print(splitted_text[5]) # обхвата дуб, с обломанными ветвями и с обломанной корой
Еще один метод — partition() разбивает строку по разделителю на три подстроки и возвращает кортеж из трех элементов — подстрока до разделителя, разделитель и подстрока после разделителя:
text = "Это был огромный, в два обхвата дуб, с обломанными ветвями и с обломанной корой" text_parts = text.partition("дуб") print(text_parts) # ('Это был огромный, в два обхвата ', 'дуб', ', с обломанными ветвями и с обломанной корой')
Если разделитель с строке не найден, то возвращается кортеж с одной строкой.
Соединение строк
При рассмотрении простейших операций со строками было показано, как объединять строки с помощью операции сложения. Другую возможность для соединения строк представляет метод join() : он объединяет список строк. Причем текущая строка, у которой вызывается данный метод, используется в качестве разделителя:
words = ["Let", "me", "speak", "from", "my", "heart", "in", "English"] # разделитель - пробел sentence = " ".join(words) print(sentence) # Let me speak from my heart in English # разделитель - вертикальная черта sentence = " | ".join(words) print(sentence) # Let | me | speak | from | my | heart | in | English
Вместо списка в метод join можно передать простую строку, тогда разделитель будет вставляться между символами этой строки:
word = "hello" joined_word = "|".join(word) print(joined_word) # h|e|l|l|o
Как проверить строку на наличие определенных символов
![]()
Допустим , у вас есть некая строка: «Я люблю программирование». Неважно , как эта строка появилась. Вам нужно проверить строку на наличие символов «мм». Для этого в Java есть несколько способов, но самый простой и действенный — это применение метода «int indexOf(String sub)».
Например:
String s = “Я люблю программирование“, “мм“;
if (s.indexOf(sub) != -1)
//здесь прописывается действие, которое необходим о выполнить, если символы найдены
else
//здесь прописывается действие, если символы не найдены
В Java можно проверить строку на символы , применяя метод «contains», например:
String s = “Я люблю программирование“;
if (s.contains(“мм“))
//здесь описывается действие, которое необходимо выполнить
>
или вот так:
public static boolean contains(String str, String substr)
return str.contains(substr);
>
contains(“Я люблю программирование“, “мм“);
Как проверить строку на символы в Python
- substring — символы/набор символов , которые необходимо разыскать в строке;
- start — необязательно указывать ; если указать, тогда определяет , с какого символа начинать поиск;
- end — необязательно указывать этот индекс ; если указать, тогда определяет , на каком символе окончит поиск.
Как проверить строку на символы в PHP
Самым простым способом проверить строку в PHP на символы является использование функции «strpos()». Данная функция вернет первое вхождение искомых символов в строке ; если их не будет, тогда она вернет «false».
Например:
$the_string = “Я люблю программирование.“;
$the_word = “люблю“;
$the_character = “мм“;
//проверяем , есть ли слово «люблю» в строке
if (strpos($the_string, $the_word) !== false)
echo `Слово “` .$the_word. `“ присутствует в строке.`;
// п роверяем , есть ли символы «мм» в строке
if (strpos($the_string, the_character) !== false)
echo ` Символы “`.the_character`“ присутствуют в строке.`
Если необходимо проверить строку на символы, но упуская значения регистра, тогда необходимо применять функцию «stripos()», которая работает так же, как и «strpos()».
Заключение
Проверить строку на символы можно в любом языке программирования, применяя внутренние инструменты языка. Сегодня мы привели самые легкие и быстрые способы, как осуществить проверку в 3-х языках. Необходимо отметить, что данные способы годятся для простого поиска. Если необходим более сложный поиск, тогда имеет смысл использовать регулярные выражения, но они работают намного медленнее. О регулярных выражениях мы поговорим в следующих статьях.
Мы будем очень благодарны
если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.
Проверить наличие текста в строке
В коде ниже показаны два способа проверить наличие текста в строке:
text = "Python" # строка для поиска # 1-ый способ if "Python" in text: print("OK") # 2-ой способ — возвращает позицию в тексте text.find("th") # 2 # если указанный текст не обнаружен, метод find вернёт -1
Регулярные выражения
Проверить наличие текста в строке через регулярные выражения можно через библиотеку re.
# Проверить наличие текста в строке через рег. выражения import re pattern = re.compile("(Python|Django)") if pattern.search(text): print("OK")
Узнать, по какому совпадению была найдена строка можно через метод group() .
import re pattern = re.compile("(Python|Django)") match = pattern.search(text) match.group() # возвращает первое совпадение — Python
Начало и конец строки
Можно проверить совпадение строки в начале и в конце текста через функции startswith() и endswith() .
text = "Python" # Проверить, что строка начинается с заданной текстом if text.startswith("Critical error"): print("true") # Проверить, что строка заканчивается с заданной текстом if text.endswith("on"): print("true")
Обновлено: 01 ноября 2020
Комментарии
Авторизуйтесь, чтобы добавлять комментарии