Python 工作正常的正则表达式模式不会';t工作实现到一个类中

Python 工作正常的正则表达式模式不会';t工作实现到一个类中,python,regex,oop,Python,Regex,Oop,此代码检索一个结果的原因: import re input_file = open("nota_simple.txt", mode='r', encoding='utf-8') text_to_search = input_file.read() pattern = re.compile("(?<=FINCA Nº: ).*") result = pattern.search(text_to_search) print(result.group()) 重新导入 输入文件=打开(“n

此代码检索一个结果的原因:

import re

input_file = open("nota_simple.txt", mode='r', encoding='utf-8')
text_to_search = input_file.read()

pattern = re.compile("(?<=FINCA Nº: ).*")

result = pattern.search(text_to_search)
print(result.group())
重新导入
输入文件=打开(“nota\u simple.txt”,mode='r',encoding='utf-8')
text_to_search=输入_file.read()
pattern=re.compile(“(?
#!/usr/bin/env-python
#-*-编码:utf-8-*-
#建议的调整。
进口稀土
类PropertyNumber(对象):

def_uuuinit_uuu(self,str,pattern=“(?add
return self.text\u found
to
search\u number()
method

你的搜索编号没有返回值。天哪!你没事!首先我想使用属性值,然后我改变了我的观点,决定使用该方法作为“getter”,因为我读到这是一种更好的做法。你认为有变量或属性吗?
import re

class PropertyNumber(object):
    regex_pattern = re.compile("(?<=FINCA Nº: ).*")

    def __init__(self, str):
        self.text_to_search = str
        self.text_found = ""

    def search_p_number(self):
        matched_p_number = PropertyNumber.regex_pattern.search(self.text_to_search)
        print(self.text_to_search)
        print(matched_p_number)
        self.text_found = matched_p_number.group()

def main():
    file_input = open("nota_simple.txt", mode='r', encoding='utf-8')
    property_report = file_input.read()
    property_number = PropertyNumber(property_report)
    print(property_number.search_p_number())

if __name__ == '__main__':
    main()
#!/usr/bin/env python
# -*- coding: utf-8 -*-

# Suggested tweaks.

import re

class PropertyNumber(object):

    def __init__(self, str, pattern = "(?<=FINCA Nº: ).*"):
        self.regex_pattern = re.compile(pattern)
        self.text_to_search = str
        self.text_found = ""

    def search_p_number(self):
        matched_p_number = self.regex_pattern.search(self.text_to_search)
        print(self.text_to_search)
        print(matched_p_number)
        self.text_found = matched_p_number.group()
        return self.text_found

def main():
    file_input = open("nota_simple.txt", mode='r', encoding='utf-8')
    property_report = file_input.read()
    property_number = PropertyNumber(property_report)
    print(property_number.search_p_number())

if __name__ == '__main__':
    main()