所以我目前在工作中有一个文本模式检测挑战需要解决。我正在尝试为数据库创建异常值检测算法,用于字符串列。
例如,假设我有以下字符串列表:
["abc123", "jkj577", "lkj123", "uio324", "123123"]
我想开发一种算法来检测字符串列表中的常见模式,并指出哪些字符串不是这种格式。例如,在上面的示例中,我希望该算法检测以下正则表达式:
r"[a-z]{3}\d{3}"
鉴于列表中的大多数条目都遵循这种模式,除了最后一个,它应该被标记为异常值。
我想到的第一个想法是使用遗传算法来查找正则表达式模式,其中适应度函数是列表中与模式匹配的条目数。我还没有计算出细节(交叉函数等),并且已经存在模式“。*”将匹配所有内容的困难,因此将始终最大化适应度函数。
有人已经解决过类似的问题吗?我在这里有什么选择?谢谢!