gpt4 book ai didi

来自文件的 Python 正则表达式字符串匹配

转载 作者:太空宇宙 更新时间:2023-11-04 02:39:12 28 4
gpt4 key购买 nike

我有一个类似于

的文本文件

alpha alphabet alphameric

我只想匹配第一个字符串“alpha”,没有别的

我有以下代码试图只匹配 alpha 字符串并获取它的行号

findWord = re.findall('\\ba\\b', "alpha")

with open(file) as myFile:
for num, line in enumerate(myFile, 1):
if findWord in line:

print 'Found at line: ', num

但是我得到以下错误:

TypeError: 'in ' requires string as left operand, not list

最佳答案

代码中的问题

  1. re.findall('\\ba\\b', "alpha") 给出了一个匹配的列表,但是你正在使用 in if findWord in line 意味着使用列表代替字符串。这就是你得到的错误
  2. 通过给定 findWord = re.findall('\\ba\\b', "alpha") 你正在搜索字符串 a in alpha string which is not现有的

试试这个

import re
#findWord = re.findall('\\ba\\b', "alpha")
#print findWord
with open("data.txt") as myFile:
for num,line in enumerate(myFile):
if re.findall('\\balpha\\b', line):

print 'Found at line: ', num+1

关于来自文件的 Python 正则表达式字符串匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47041305/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com