-3

我正在尝试使用正则表达式搜索此文本文档,但我还需要用户在正则表达式中输入,我不确定如何执行此操作,并且对 python 编程很陌生,任何帮助将不胜感激!

import re

str1=raw_input("Room Number(L1 - L5): ")
text=open('roombookings.txt', 'r')

while 1:
    line = text.readline()
    if line:
        re.search(?????)
    else:
        break

text.close()
4

2 回答 2

3
  1. 要遍历文件中的行,请执行

    for line in text:
    

    你不需要这些while 1东西。

  2. 要将变量的内容“拼接”成字符串,请执行以下操作

    "Your name is {name}.".format(name="John")
    

    请参阅文档

  3. 要打开和关闭文件,请执行以下操作:

    with open(...) as f:
    

    而不是手动编写f.close()——这也可以处理异常。另请注意,如果您没有显式关闭文件,它将在删除对象时关闭,当没有更多引用它时会发生这种情况。

于 2012-04-24T07:22:31.993 回答
0

如果您的意思是用户输入要插入正则表达式的纯字符串(本身不是正则表达式),请使用re.escape对字符串进行编码。

于 2012-04-24T07:33:42.303 回答