1
我了解以下大多数代码以及它的作用,除了if re.search(str(searchString), line) != None:
行之外 - 它接近底部。需要Python CGI/RE帮助
的代码接受另一个HTML形式由用户的字符串的输入,然后该Python脚本运行以检查文件,如果输入的字符串/单词是在该文件中,然后打印所有行与在该单词。
import cgi, re
print ('Content-type: text/html \n')
print ('<html>')
print ('<head>')
print ('<title>Web Client Server File Search Example </title>')
print ('</head>')
print ('<body>')
print ("<H1>Search Text Example </H1>")
form = cgi.FieldStorage()
searchString = form.getvalue('search')
print("<br><H2 style='color:red;'> Search String: ", searchString)
fh = open("animals.txt")
fhdatalist = fh.readlines()
for line in fhdatalist:
line = line.rstrip()
if re.search(str(searchString), line) != None:
print ('<br>Line Found: ', line)
fh.close()
有人可以简单解释一下它/ search()的工作原理吗?
好的,谢谢!我认为这更有意义。那么什么是'!= None:'部分呢? –
当re.search函数找到匹配项时,它会返回一个匹配对象,您可以从中获取信息。如果没有找到任何内容,则返回'None'。 因此,该行在说“如果re.search函数的返回值不等于'None',则从文件中打印出行 这是一个轻微的错误 - 您可能想将行更改为'如果re.search(str(searchString),line)不是None:'你的作业就是找出原因;} –
有趣的是,我的导师实际上写了这些代码......所以我认为他已经做对了!把它当作'不是无'可以让现在更容易理解,非常感谢! –