- 主题:有没有好用的自动产生正则表达式的库?
学术上这件事叫做文法推断。
【 在 adu 的大作中提到: 】
: 我输入一些字符串,每个字符串我标明需要匹配的部分。
: 程序输出一个正则表达式,只匹配我标明的部分。
: --
: ...................
--来自微水木3.5.1
--
FROM 175.164.3.*
不是进行词法分析,而是根据若干文本归纳出对应这些文本的正则表达式,当然这样的正则表达式会有无限多,工程中需要根据某些指标(比如最具体的)来确定最优的正则表达式,这个过程叫文法推断,在形式文法的教科书中会有专门的一章讨论这个主题,奇怪的是很少人了解它。
【 在 one4all4one 的大作中提到: 】
: 正则就是你告诉它怎么匹配。要生成正则就相当于弄一个词法分析
: --
: FROM 82.19.154.*
--来自微水木3.5.1
--
FROM 175.167.146.*
嗯。
【 在 one4all4one 的大作中提到: 】
: 兄弟说的是formal language吗?
: 【 在 siegfried415 的大作中提到: 】
: : 不是进行词法分析,而是根据若干文本归纳出对应这些文本的正则表达式,当然这样的正则表达式会有无限多,工程中需要根据某些指标(比如最具体的)来确定最优的正则表达式,这个过程叫文法推断,在形式文法的教科书中会有专门的一章讨论这个主题,奇怪的是很少人了解它。
: ...................
--来自微水木3.5.1
--
FROM 175.167.146.*
没什么,估计你在工作中用不到,所以不会关注的。
【 在 one4all4one 的大作中提到: 】
: 惭愧啊,这是我当年认为最没有用的一科。学了,用的formal b,过了。但是全忘了
--
FROM 175.164.3.*
根据我的经验,在计算机领域中最难实现的功能就是那些差不多、能用的就行的功能。
【 在 adu 的大作中提到: 】
: 按您老说的实现一个复杂吗?
:
: 不需要返回一个效率最高的,一个差不多能用的就行。
: ...................
--来自微水木3.5.1
--
FROM 175.164.3.*
这就是一个概率问题了,类似于概率语言模型,如果你给出10个示范,10个示范都是以1开头,80%的示范中1后是2,20%的情况是其他数字,那么可以训练出一个概率自动机,此后,对于输入14,这个概率自动机会给出一个不太大的分数(但是如果你的阈值比较低,还是能够被判为“YES”),而888的概率就接近于0,几乎一定是“NO”了。
【 在 lioncat7 的大作中提到: 】
: 123 和12你怎么自动产生
: 谁知道你想能匹配14还是888
--
修改:siegfried415 FROM 60.16.242.*
FROM 60.16.242.*