gpt4 book ai didi

string - 这是 "string pattern matching"算法吗?或者是其他东西?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:08:41 28 4
gpt4 key购买 nike

我什至不确定它是否称为模式匹配,但我想做一些与那里的规则类似的事情:

我的“对象”具有“能力”属性,该属性是由空格分隔的一系列名称。例如:

a.capability = "" // no pattern
b.capability = "foo"
c.capability = "bar"
d.capability = "foo bar"
e.capability = "bar lol truc bidule"

(假设每个对象必须具有与其他对象不同的模式)

然后我有一个全局上下文对象,它也有这样的属性:

context.capability = ""  // 1
// OR
context.capability = "foo" // 2
// OR
context.capability = "bar" // 3
// OR
context.capability = "bar foo" // 4
// OR
context.capability = "lol" // 5

现在,我们只想选择一个“最匹配”上下文功能的唯一对象。为此,我们遵循以下规则:

  1. 如果对象没有模式且上下文也没有模式,则选择该对象;
  2. 如果一个对象没有模式并且上下文有一个模式,如果没有其他对象匹配则选择该对象;
  3. 如果一个对象与上下文具有完全相同的模式名称,则选择它;
  4. 选择上下文模式中包含的模式名称数量最多的对象;

例如:

  • 在上下文情况 1) 中:a 将被选中;
  • 在上下文情况 2) 中:b 将被选中;
  • 在上下文情况 3) 中:将选择 c
  • 在上下文情况 4) 中:d 将被选中;
  • 在上下文情况 5) 中:e 将被选中;

我写这篇文章时甚至没有测试这个规则是否有效,它只是我想要定义的内容的草稿。

我的问题:

  1. 你怎么称呼这种算法? (让我用正确的名字做 future 的研究)
  2. 是否已经定义了这样的规则?它看起来足够通用,以至于之前有人可以定义类似的规则,但除了定义重载规则的语言标准部分(如 C++ 标准),我找不到任何类似的东西;
  3. 是否有研究探索此类算法/规则的属性?我不确定这是适合我的用例的正确方法,但它似乎是正确的解决方案。但是我没有实现这种语言功能的经验,所以我想查看一些关于我可能会遇到的问题的数据(但到目前为止我找不到任何东西)。

一位 friend 建议看一些关于人工智能、专家系统和语言设计器和编译器实现的书籍。但是,有关如何查找有关这种特定操作方式的数据的一些指导会大有帮助。

最佳答案

我没有直接回答你的问题,但在考虑之后,我可以通过几种方式来构建问题:

因此,我认为这个问题没有一个术语——它对太多领域来说太有趣了。这三个领域之间肯定有大量研究(例如 Google):

关于string - 这是 "string pattern matching"算法吗?或者是其他东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17405909/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com