问题标签 [examine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
901 浏览

c# - Umbraco:在搜索结果中获取网格内容?

我有一个像这样的简单检查搜索;

我的问题是,如何从网格中获取一段文本?Propertynamecontentgrid。查看索引,我可以看到有一个名为contentgrid包含文本的属性,从格式等中剥离。

0 投票
1 回答
781 浏览

umbraco - Umbraco 检查,嵌套多个布尔运算符

我正在尝试将这些过滤器添加到已经合理的复杂 Umbraco 检查查询中,并且已经看到您不能将 API 与原始 lucene 查询混合使用,因此整个事情可能必须原始完成,我一直试图避免这种情况它是一个有很多维度的查询生成器。

API可以做这种事情吗?我看到了,GroupedOr/And但我看不出它是如何削减的,因为这些是独占/包含的 sql“In”类型查询。

0 投票
2 回答
1344 浏览

c# - 搜索包含搜索词的字段

我对 Lucene 搜索查询进行了一些研究,并在互联网上搜索了有关如何执行此操作的答案......但是找不到有效的方法,我的尝试失败了,没有返回我想要的。

基本上,我的数据库中有一个字段,它是用逗号连接的 ID,这些字段是 Umbraco 文档属性。

例如,假设我有这些字段的条目:

条目1:相关内容: 500,700

条目2:相关内容: 500

我的搜索查询是针对值为 500 的字段,截至目前,它只返回条目 2,但是当我通过使用值 500* 使用通配符术语时,它会同时返回它们。那很好,但问题是在搜索不乞求价值的东西时。

当我搜索 700 时,它不会返回条目 1,并且在 Lucene 上的通配符搜索不允许 * 出现在搜索词的开头。

看起来我的查询正在搜索必须与搜索词完全相同的值。我认为,如果有一种方法可以进行查询,就像使用 .Contains() 搜索字符串中的子字符串一样,它会解决这个问题。

0 投票
1 回答
1753 浏览

java - 如何停止 Lucene 标准分析器删除特殊字符

我在使用 Lucene 时遇到了一些困难,希望能提供任何帮助。

我有一个使用 QueryParser.Parse 手动编写和解析(此查询)的自定义查询。我正在使用版本 LUCENE_29 和 StandardAnalyzer。

在我的查询中,我有一个特殊字符(冒号),需要保留:

解析上述查询文本后的输出为:

有没有人有任何建议,我尝试将一个空的停用词集合传递给 StandardAnalyzer 构造函数,但这没有任何效果,它仍然会去掉冒号。

谢谢你。

0 投票
1 回答
357 浏览

indexing - 使用 Umbraco 从索引中获取类型化文档

我会尝试什么

我在内容树中有很多人,我将为此创建一个新索引。这是为了在搜索特定人员时提高 Web 应用程序的性能。


创建索引

我在 Umbraco 7.7 的检查管理器中创建了一个新索引,命名PersonIndexer为索引所有人员。这仅包括人员的节点类型。

来自 Umbraco 的检查经理

为此,我编写了以下代码:

ExamineSettings.config

在→ →标签内的文件ExamineSettings.config内:ExamineExamineIndexProvidersproviders

在同一个文件中,我也添加了这个,但在ExamineExamineSearchProvidersproviders标签内:

ExamineIndex.config

在标签内的文件ExamineIndex.config内:ExamineLuceneIndexSets


获取文件

当我建立这个索引时,它在索引中有 7 个文档。

建立索引后

我怎样才能在我的视图中获取所有这些文件。我试过这段代码:

这给了我该索引的所有属性。

快速查看索引器变量


问题

这不是我需要的。所以我的问题是:如何从该索引中获取类型化的文档?


编辑

在@Marks 回答之后,我尝试了他的代码,但是当我观看时,searchResults我得到了这个:

空列表

当我对 Lucene 进行搜索时*,我得到了 7 个结果。

Lucene 搜索 * 给出 7 个结果

当我进行文本搜索 xor 我在空字符串上输入 xor lucene 搜索时,我什么都没有。

0 投票
1 回答
344 浏览

indexing - 检查搜索中忽略大小写 Umbraco 7.6

我在 Umbraco 7.6 的检查管理器中创建了一个索引器,并将搜索一些项目。我看到这是区分大小写的,我怎么能禁用它?

这是我所做的:

ExamineSettings.configExamineIndexProviders\provders标签内:

ExamineSettings.configExamineSearchProviders\provders标签内:

ExamineIndex.config

我在互联网上搜索了很多变体,但没有发现忽略大小写的结果。

更新:

在这篇文章中,我读过这个:

WhitespaceAnalyzer 是区分大小写的搜索器,

所以我必须使用这个:StandardAnalyzer但没有帮助我。帖子里的链接坏了……

0 投票
1 回答
909 浏览

c# - 当我使用空格时,Lucene 搜索不起作用

我的情况

我创建了一个搜索功能,为此我创建了一个新的索引器和搜索器。问题是当我输入一个带有空格的搜索查询时。下面的例子。

数据

我已经创建了这些人并站在我的索引中:

搜索结果

我尝试了下一个查询:

问题

有些查询不是我接受的。我怎么能解决这个问题?

我的代码

这是我制作的代码:

配置更新 1

检查索引

检查设置(检查索引提供程序):

检查设置(检查搜索提供程序):

也试过更新2

我也试过这个并得到了最好的结果:

当我在上面ToString()进行searchCriteria查询并搜索时van de burg,它给了我这个:

这里的问题是当我得到两个姓氏相同的人时。例如:

搜索结果:

结果 1 到 9 都很好。

0 投票
1 回答
996 浏览

c# - Umbraco 检查 Azure 上消失的索引

我在 Azure 上的应用服务中托管的 Umbraco 7.5.6 站点上遇到问题,在该站点上,索引似乎在不特定的时间后被删除。

我们正在外部检查索引中存储有关已发布新闻文章的信息,包括一些自定义字段,以从索引中查询故事。这由我们面​​向客户端的搜索 API 使用。

最初,我们认为这可能是由 Azure 交换服务器引起的,因此从 ExamineSettings.config 下的路径中删除了 {computerName} 参数。然而,这似乎没有任何效果。

我们当前的索引路径是~/App_Data/TEMP/ExamineIndexes/External/

ExamineSettings.config文件如下:

由于这个问题的不可预测性,没有编写 WebJob 来定期重新发布文章,我不确定接下来要尝试什么。

0 投票
0 回答
364 浏览

lucene - 一个字段下的多个值的 Umbraco Lucene 索引

我需要为分配给文章的一系列关键短语编制索引。短语存储为带有 \r\n 分隔符的字符串,一个短语可能包含另一个短语,例如:

这是一个关键词
这也是一个关键词
这也是一个关键词

将被存储为

keywords: "This is a key phrase\r\nThis is a key phrase too\r\nThis is also a key phrase"

执行搜索时不应匹配This is a key phrase too具有短语的文章。This is a key phrase

我有一个自定义索引器ISimpleDataService,它可以正常工作并对内容进行索引,但我不知道如何获取诸如“这是一个关键短语”之类的查询来返回结果。

从我读过的内容来看,我认为默认值QueryParser应该在分隔符上拆分,并将每个条目视为一个单独的值,但它似乎不是这样工作的。

尽管我尝试了各种实现,但我当前的搜索代码如下所示:

我认为这样做的“简单”方法是将每个关键字添加为单独的“关键字”字段,但是SimpleDataSet作为 .NET 实现的一部分提供的使用 a Dictionary<string, string>,这使我无法使用一样的名字。

我是 Lucene 和 Umbraco 的新手,因此我们将不胜感激地收到任何建议。

0 投票
0 回答
135 浏览

lucene - Umbraco Back Office 内容搜索在 I - i 字符上失败

Umbraco 后台搜索在某些土耳其语字符上失败。其中一些(Ç-Ş等)工作正常。然而,I 代表 little ı,İ 代表 i。

我们在 I 和İ 字符上有问题。将标准 InternalIndexSet 用于具有初始设置的后台。

我应该覆盖某个类还是可以通过配置文件的快速技巧来处理它。

谢谢你的帮助,