Как найти значение в строке (txt) python

Я новичок в мире python и пытаюсь извлечь значение из текста. Я пытаюсь найти ключевое слово с помощью re.search('keyword'), но я хочу получить значение после ключевого слова

text = word1:1434, word2:4446, word3:7171

я просто хочу получить значение слова 1

i try

keyword = 'word1'
before_keyword, keyword, after_keyword = text.partition(keyword)
print(after_keyword)

output

:1434, word2:4446, word3:7171

я просто хочу получить значение слова1 (1434)

Для упрощения этого можно использовать тип данных Dictionary, вот как это можно сделать:

text = {
    'word1':1434,
    'word2':4446,
    'word3':7171
}

name = 'word1'

if name in text.keys():
    print(text.get(name))

Предполагается, что вводимый текст является строкой, а не диктой; тогда

text = "word1:1434, word2:4446, word3:7171"
keyword = 'word1'
print(text.split(keyword+":")[1].split(",")[0])

Надеюсь, это поможет...

Вот как можно искать текст с помощью регулярных выражений:

import re

keyword_regex = r'word1:(\d+)'
text = "word1:1434, word2:4446, word3:7171"
keyword_value = re.search(keyword_regex, text)
print(keyword_value.group(1))

Регекс word1:(\d+) ищет строку word1:, за которой следует одна или несколько цифр. Поиск прекращается, если следующий символ не является цифрой. Круглые скобки вокруг (\d+) делают эту часть группой захвата , что позволяет вам получить к ней доступ позже, используя keyword_value.group(1).

Подробнее о регулярных выражениях здесь и модуле re Python здесь.

Вернуться на верх