Python:正则表达式

时间:2012-12-11 18:25:36

标签: python

我正在尝试使用正则表达式搜索目录中的所有文件,然后最终会更改文件的名称。

这是我到目前为止所拥有的。

def regExp():
    os.chdir("C:/Users/David/Desktop/Test/Files")
    files = os.listdir(".")
    for x in (files):
        inputFile = open((x), "r")
        content = inputFile.read()
        inputFile.close()
        try:
            regex_txt = ("\(;;\)")
            regex = re.compile(regex_txt)
            print (regex.findall(x))

获取以下错误消息

File "<module1>", line 108
    print (regex.findall(x))
                           ^

SyntaxError:解析时的意外EOF

感谢任何帮助

2 个答案:

答案 0 :(得分:3)

问题是您的except阻止没有finallytry阻止。一个try块本身没有意义,所以Python坚持你有

try:
    your code
except SomeException:
    handle it

try:
    your code
finally:
    clean up

答案 1 :(得分:-3)

您应该使用:

re.findAll(regex,text,flags)

如果你想预先编译它,我想你可以这样做:

 my_regex= re.compile(pattern)
 result = my_regex.match(string)