使用python一次性在块中查找文件中的“a”字符串

使用python一次性在块中查找文件中的“a”字符串,python,Python,我有一个包含3个块的文件 区块1: A. 区块2: A. 区块3: A. 我想用python搜索block1:一个字符串 我已经完成了搜索block1:和一个字符串的代码,但它给出了所有的a file = open( "c:\Textfile.txt", "r" ).readlines() var=raw_input("enter the value") var1="// Block1:" for line in file: if re.search(var1,line,re.IGNOR

我有一个包含3个块的文件 区块1: A. 区块2: A. 区块3: A. 我想用python搜索block1:一个字符串 我已经完成了搜索block1:和一个字符串的代码,但它给出了所有的a

file = open( "c:\Textfile.txt", "r" ).readlines()
var=raw_input("enter the value")
var1="// Block1:"
for line in file:
    if re.search(var1,line,re.IGNORECASE):
        print re.search(var,line,re.IGNORECASE)
        print "found",line
        for line in file:
            if re.search(var,line,re.IGNORECASE):
                print "value=",line

我假设您的文本文件如下所示:

    Block1: test is t
    Block2: test is u
    Block3: test is V
import re
file = open( "Textfile.txt", "r" ).readlines()
var=raw_input("enter the value")
for line in file:
    if line.find('Block1:') != -1:
        if re.search(var,line,re.IGNORECASE):
            print "value=",line
您可以按如下方式进行操作:

    Block1: test is t
    Block2: test is u
    Block3: test is V
import re
file = open( "Textfile.txt", "r" ).readlines()
var=raw_input("enter the value")
for line in file:
    if line.find('Block1:') != -1:
        if re.search(var,line,re.IGNORECASE):
            print "value=",line

如果您显示1.txt的内容以及所需输出的示例,这将非常有用。1.txt包含Block1:a b Block2:a c Block3:a d I want output is Block1:a Element您必须在上面的问题字段中提供1.txt的精确内容,您可以按照代码的格式对其进行编辑。当你说你的1.txt包含Block1:a b Block2:a c Block3:a时,这可能是误导,因为文件可能会将其放在3行而不是1上,但我们无法从你的答案中看到。好的,我如何从Block1:not Block2和Block3中获取元素?你能给出你的Textfile.txt文件的示例格式吗,那么我们就更容易理解了。代码正在工作Block1:test是t Block2:test是t Block3:test是t如果t在新行中,那么在代码中要做什么如果文本文件包含Block1:test是t Block2:test是t Block3:test是t那么代码将是:import re file=openTextfile.txt,'r+'data=file.read var=raw_输入值block1=data.split'Block2'[0]如果re.searchvar,block1,re.IGNORECASE:print block1.split':'[1]行。查找'block1:'!=-1:如果“Block1:”在第1行中,则可能是为了更好的可读性。