2017-04-02 114 views
-4

如何编写从列表中获取字符串的软件,并根据列表中每行的模式生成正则表达式。正则表达式+人工智能

+0

你能举一个你的列表和你的模式/表达式的例子吗? – CoronA

回答

0

由于正则表达式是正则表达式,这意味着它们用于匹配定义良好的模式。如果您需要一种模糊匹配,则不需要正则表达式或者有效。如果您需要“查找类似文本”算法,请不要使用正则表达式并使用机器学习算法之一。 Google“机器学习算法”。

顺便说一句,制作一个能够生成匹配一组字符串的正则表达式的程序并不难,但如果仅用于有趣或学习的目的,这将是有意义的,我无法想象它还有什么用处对于。

例如,如果“看起来像电子邮件地址”那样,您可以获得匹配的表达式,但您确实无法确定它是否为电子邮件地址,因为要确定您需要严格的适用的规则,这些规则无法从任何真实世界的电子邮件地址样本中自动确定,这些地址明显小于所有现有电子邮件帐户的实际数量。

如果我会做那样的事情,我会首先“提取”长度的规则。不能短于最短,不能长于最长。然后将字符集限制为仅存在于集合中,或者扩展为完整的字母数字。没有特殊字符延伸。它可能适用于某些情况,对其他情况失败。