Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 12

Тема: Python find strings in string: как искать строки внутри строк?

  1. Python find strings in string: как искать строки внутри строк?

    Всем привет! Столкнулся с проблемой: нужно найти одну или несколько строк в другой строке на питоне. Какие лучшие методы и библиотеки для этого подходят? Как вы обычно решаете такие задачи? Очень благодарен за любые советы и код примеры!



  2. Ждём вас в нашем чате в Телеграмм ==>> @pythoneer_chat

    А ТАКЖЕ: Канал о Python, статьи и книги ==>>
    @pythoneer_ru

  3. Привет! Для решения твоей задачи можно использовать метод find() или index(). Они оба возвращают индекс первой найденной подстроки или -1, если подстрока не найдена. Вот пример:

    Программный код:
    text "Hello, world!"
    word "world"
    position text.find(word)
    print(
    f"Position of '{word}' in text: {position}"

  4. Цитата Сообщение от Лорд
    Привет! Для решения твоей задачи можно использовать метод find() или index(). Они оба возвращают индекс первой найденной подстроки или -1, если подстрока не найдена. Вот пример:

    Программный код:
    text "Hello, world!"
    word "world"
    position text.find(word)
    print(
    f"Position of '{word}' in text: {position}"
    А что если надо найти все вхождения подстроки? Эти методы ок для первого вхождения, но не для всех.

  5. Я обычно юзаю re модуль для таких задач. Там можно использовать регулярки для поиска всех вхождений сразу. Пример:

    Программный код:
    import re
    text 
    "Python is awesome! Python can do a lot."
    matches re.findall(r'\bPython\b'text)
    print(
    matches

  6. Цитата Сообщение от Андрей999
    Я обычно юзаю re модуль для таких задач. Там можно использовать регулярки для поиска всех вхождений сразу. Пример:

    Программный код:
    import re
    text 
    "Python is awesome! Python can do a lot."
    matches re.findall(r'\bPython\b'text)
    print(
    matches
    О, это круто! Регулярки реально мощные. Но не перегружается ли код?

  7. Собственно, если надо найти все вхождения и индексы, то можно ещё и finditer из re использовать:

    Программный код:
    import re
    text 
    "Multiple Python examples. Python is fun to learn."
    for match in re.finditer(r'Python'text):
        print(
    f"Found {match.group(0)} at {match.start()}"

  8. Цитата Сообщение от Vitaly_pronin
    Собственно, если надо найти все вхождения и индексы, то можно ещё и finditer из re использовать:

    Программный код:
    import re
    text 
    "Multiple Python examples. Python is fun to learn."
    for match in re.finditer(r'Python'text):
        print(
    f"Found {match.group(0)} at {match.start()}"
    Эй, а как ты регулярку для неопытных объяснишь? Как это работает на простом примере?

  9. Фишка есть ещё в методе count(), который выводит количество вхождений подстроки:

    Программный код:
    text "test test test"
    word "test"
    count text.count(word)
    print(
    f"'{word}' found {count} times."
    Если ищешь просто количество без индекса, то это самый простой метод.

  10. Цитата Сообщение от Бегемот
    Фишка есть ещё в методе count(), который выводит количество вхождений подстроки:

    Программный код:
    text "test test test"
    word "test"
    count text.count(word)
    print(
    f"'{word}' found {count} times."
    Если ищешь просто количество без индекса, то это самый простой метод.
    Да, count() рулит для быстрого подсчета, но без индексов не всегда полезно.

Страница 1 из 2 12 ПоследняяПоследняя