PHP前端开发

配置文件中存储正则表达式如何转换为正则对象?

百变鹏仔 5天前 #Python
文章标签 正则

配置文件中存储正则表达式类型转换问题

在配置中存储正则表达式后,需要将它们转换为正则对象才能进行匹配。配置中只能包含字符串,因此读取后的正则表达式类型也是字符串。

解决方案:

一种方法是使用穷举:

import repattern_list = ['.*?日历(.*?)', 'pattern[, flags]']for pattern in pattern_list:    compiled_re = re.compile(pattern)    # 使用 compiled_re 执行匹配操作

另一种方法是动态执行字符串:

import repattern_dict = ['re.compile(.*?日历(.*?))', 're.compile(pattern[, flags]']for pattern_str in pattern_dict:    pattern_obj = eval(pattern_str)  # 执行字符串并返回正则对象    # 使用 pattern_obj 执行匹配操作