我是python世界的新手,我正在尝试从文本中提取值。我试图通过重新搜索('keyword'(找到关键字,但我想在关键字之后获得值
text = word1:1434, word2:4446, word3:7171
我只想得到单词1 的值
我试试
keyword = 'word1'
before_keyword, keyword, after_keyword = text.partition(keyword)
print(after_keyword)
输出
:1434, word2:4446, word3:7171
我只想得到单词1的值(1434(
以下是如何使用正则表达式搜索文本:
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))
RegExword1:(d+)
搜索后面跟有一个或多个数字的字符串word1:
。当下一个字符不是数字时,它将停止匹配。(d+)
周围的括号使这部分成为捕获组,这使您能够稍后使用keyword_value.group(1)
访问它。
这里有更多关于正则表达式的信息,这里有Python的re
模块。
假设Text输入是字符串而不是dict;然后
text = "word1:1434, word2:4446, word3:7171"
keyword = 'word1'
print(text.split(keyword+":")[1].split(",")[0])
希望这能帮助。。。