从样本算法创建正则表达式

前端之家收集整理的这篇文章主要介绍了从样本算法创建正则表达式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
AFAIK没有人实现一种算法,该算法采用一组字符串和子串,并返回一个或多个正则表达式,它们匹配字符串中的给定子串.所以,例如,如果我给我的算法这两个样本:

string1 = "fwef 1234 asdfd"
substring1 = "1234"

string2 = "asdf456fsdf"
substring2 = "456"

算法会给我正则表达式“[0-9] *”.我知道它可以提供多个正则表达式甚至没有可能的正则表达式,你可能会发现1000个理由,为什么这样的算法几乎不可能实现完美.但最接近的是什么?

我也不关心正则表达式本身.基本上我想要的是一个算法,它采样如上所述,然后在其中找到一个模式,可以用来轻松找到我想在字符串中找到的“种类”文本,而无需手动编写任何正则表达式或代码.

解决方法

FlashFill MS Excel 2013的新功能可以完成您想要的任务,但它不会为您提供正则表达式.这是一个NP完全问题,也是一个实用的开放式问题.如果您对如何从多个示例合成字符串操作感兴趣,请转到 Flash Fill official website并阅读一些论文.他们有伪代码和演示.电影也是如此.

猜你在找的正则表达式相关文章