Solr 停用词替换为 _ 符号

2023-12-21

我的自动建议中的 solr 停用词有问题。所有停用词均替换为 _ 符号。

例如,我在字段“deal_title”中有文本“简单文本”。当我尝试搜索单词“简单”时,solr 显示下一个结果“_简单文本_”,但我期望“简单文本”。

有人可以解释一下为什么会这样工作以及如何解决它吗? 这是我的 schema.xml 的一部分

<fieldType class="solr.TextField" name="text_auto">
    <analyzer type="index">
        <charFilter class="solr.HTMLStripCharFilterFactory"/>
        <tokenizer class="solr.StandardTokenizerFactory"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/> 
        <filter class="solr.ShingleFilterFactory" maxShingleSize="3" outputUnigrams="true" outputUnigramsIfNoShingles="false" /> 
    </analyzer> 
    <analyzer type="query">
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/> 
        <tokenizer class="solr.StandardTokenizerFactory"/> 
        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
    </analyzer>
</fieldType>

<field name="deal_title" type="text_auto" indexed="true" stored="true" required="false" multiValued="false"/>

<fieldType name="text_general" class="solr.TextField">
  <analyzer type="index">
    <tokenizer class="solr.KeywordTokenizerFactory"/>
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="false"/>
    <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>
  <analyzer type="query">
    <tokenizer class="solr.KeywordTokenizerFactory"/>
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="false"/>
    <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>
</fieldType>

我在 Solr 6.3 中的解决方案(其中enablePositionIncrements="false"不再可能了)是:

  1. 删除停用词
  2. 木瓦与fillerToken=""(这删除了_)
  3. 删除前导和尾随空格
  4. 删除重复项

    <filter class="solr.StopFilterFactory" format="snowball" words="lang/stopwords_de.txt" ignoreCase="true"/>
    <filter class="solr.ShingleFilterFactory" fillerToken=""/>
    <filter class="solr.PatternReplaceFilterFactory" pattern="(^ | $)" replacement=""/>
    <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Solr 停用词替换为 _ 符号 的相关文章

  • 具有基本身份验证的 Solr Cloud 失败 - Solr 管理员未经授权的 401 错误

    我已经使用 Solr 6 6 0 和 Zookeeper 3 4 10 设置了 SolrCloud 我正在尝试根据最新文档设置基本身份验证https cwiki apache org confluence display solr Basi
  • 对 SolrConfig.xml 文件的更新未得到反映

    我在 SolrConfig xml 文件中添加了一个新的请求处理程序 但是每当我尝试使用新的处理程序时 我都会收到带有 未知处理程序 错误的 404 修改SolrConfig xml文件时是否还需要修改其他文件 Thanks 您需要重新启动
  • 如何使用 Solr 选择不同的字段值?

    我想做与此 SQL 相同的操作 但使用 Solr 作为我的数据存储 SELECT DISTINCT txt FROM my table 什么语法会强制 Solr 只给我不同的值 http localhost 8983 solr select
  • 为什么 solr RemoveDuplicatesTokenFilterFactory 不起作用?

    我的 schema xml 正在拆分产品名称 然后使用RemoveDuplicate 删除拆分后的重复单词
  • 带有子元素的 Solr 文档?

    是否可以以某种方式创建包含子元素的 solr 文档 例如 我将如何表示这样的事情
  • Solr - 从数据库导入日期时间字段 -> 2 小时差异

    我正在 Solr 中导入日期时间列 SQLServer 并且 solr 中的值始终比数据库中早 2 小时 并且具有完整导入和增量导入 我已经用正确的时间配置了jvm 在日志中它显示了正确的时间 我想我必须在 data config xml
  • Node.getTextContent() 在 Node 中未定义

    在我的项目中我面临一个问题 getTextContent 方法是 节点类型未定义 我目前使用的是jdk 1 5 谁能告诉我这是什么意思 如果您遇到这个问题Eclipse 我测试的解决方案是 Java Build Path Order and
  • 如何使用 SolrJ 获取突出显示的片段?

    我正在将我的应用程序从 Lucene 迁移到 Solr Solr 可以更好地处理突出显示 但是如果我搜索关键字 city 我会期望得到如下响应 id fdc3833a 0e4f 4314 ba8c title Paris is a beau
  • SolrCloud:无法创建集合、锁定问题

    我一直在尝试实现 SolrCloud 一切正常 直到我尝试创建包含 6 个分片的集合 我的设置如下 5 个虚拟服务器 全部运行 Ubuntu 14 04 由一家公司跨不同数据中心托管 为整体运行 ZooKeeper 3 4 6 的 3 台服
  • Solr距离过滤

    我正在尝试使用 Solr 进行距离范围搜索 我知道在5公里范围内进行搜索过滤很容易 q fq geofilt pt 45 15 93 85 sfield store d 5 我所追求的是如果我正在寻找一系列的说法 如何做同样的事情5至10公
  • solr 中的文本字段排序

    我正在使用 solr 3 4 并希望 solr 搜索结果在文本字段上排序 如何实现像 int 自然排序一样对文本字段进行排序 有没有办法在查询时将文本字段转换为int 我的排序字段是字符串类型 我希望它在排序时表现得像 int 字段 我无法
  • Solr 中的多值字段排序

    我有一个 Solr 索引 将每个产品的价格存储在多值字段中 我需要按价格对结果集进行排序 其中价格从低到高 从高到低 我尝试对价格进行排序 它显示错误您无法对 multivalued True 字段进行排序 下面是我的 solr XML
  • 如何在不使用 SPLITSHARD 的情况下动态向 SolrCloud 添加节点?

    我已经设置了Solr云有 4 个碎片 我向 SolrCloud 添加了 8 个节点 4 个领导者和 4 个副本 每个节点运行在不同的机器上 但后来我发现我的数据越来越多 每天400万文件 这样我的 4 个分片就不够用了 因此 我想动态地向该
  • SOLR - 过滤器查询中的正则表达式

    我想在 fq 中实现 Regex 但以前从未实现过 我的属性中有以下值 字段类型为 小写 Prop company1 city1 state1 country1 高级分析化学家 芝加哥 我想根据正则表达式过滤结果 正则表达式应该与上面的内容
  • 复杂的 SOLR 查询,包括 NOT 和 OR

    我对 SOLR 搜索有一些相当复杂的要求 我需要针对标记内容的数据库执行这些搜索 我需要首先过滤数据库以获取与我的过滤器标签匹配的结果 任何具有黑名单中的标签的结果都应被删除 除非它们也包含白名单中的标签 假设我想检索所有标记为 森林 或
  • Solr MoreLikeThis 不适用于多个分片?

    我在 SolrCloud 中有 5 个节点集群 每个节点有 2 个分片 Solr版本 6 3 0 现在 当我运行 mlt 查询时 它仅返回每个节点的结果 并且不会将它们分布在所有分片 节点上 即 没有给出任何结果 给出结果 我什至尝试将其指
  • 需要在 java api 中的 Solr 搜索中搜索文本及其周围的几行

    我正在使用 solr 7 7 2 并且我使用 solrj 在 Solr 中编写了一个 Java 程序 该程序在一个巨大的文本文件中搜索单词 我使用以下代码来显示代表整个文本的搜索结果 SolrQuery params new SolrQue
  • openNLP 与 Solr 集成时出现异常

    我正在尝试将 openNLP 与 Solr 6 1 0 集成 我配置了架构和 solrconfig 文件 详细信息请参见 wiki 链接 https wiki apache org solr OpenNLP https wiki apach
  • Solrcloud Zookeper 设置:等待 4000ms 后未找到注册的领导者,集合:c1 切片:shard2

    我使用 solr 4 10 3 我通过 java 中的嵌入式 jetty 服务器启动 solr 我正在尝试使用 2 个分片 领导者 配置 solrcloud 我有一个外部动物园管理员设置 我在启动 solr 时指向动物园管理员实例 如下所示
  • 如何根据特定字段对 solr 查询的前 100 个结果进行排序?

    我想使用特定字段对 solr 的前 100 个文档进行排序 但它对整个结果集进行排序 然后显示结果 以下是我的代码 query1 setQuery Natural Language query1 setStart 0 query1 setR

随机推荐

  • OSS Nexus:如何使用 REST API 以文本形式检索最新版本

    我想检索最新版本名称 作为文本 以便能够重命名从 Nexus 检索到的具有时间戳的工件 我所做的是创建一个包含内部 jar 项目 依赖项 相关脚本等多个存档的存档 但是 如果打包的 jar 是快照 则存档在下载时会带有时间戳 这些时间戳替换
  • Bootstrap面板折叠当您单击其中的链接时折叠

    在下面的 HTML 页面中 Heading 1 and Heading 2当页面第一次加载时正确折叠 因为我正在使用class panel collapse collapse Then Collapse Expand当用户单击时工作正常He
  • 在 XAML 中将密码框中的文本居中

    我试图将文本放在密码框中居中 在 Blend 中 用于对齐的文本属性全部被禁用 还有其他方法可以做到这一点吗 感谢您的帮助 Horizo ntalContentAlignment 在 WPF 中工作 但不幸的是在 Silverlight 中
  • 我怎样才能指导更少的人忽略某些风格的数学?

    我正在使用新的calcCSS 中的函数获取对象的宽度 如下所示 width calc 100 40px 不幸的是 由于这是在 LESS 文件中 因此 LESS 在编译时 有效 地将其预先转换为 60 我希望更少地忽视数学calc函数 因为我
  • 如何在 React 应用程序中排除全局样式?

    我在用材质用户界面 https material ui com 用于构建我的 React 项目 然而 有一个组件必须嵌入到不同的站点 意思是 我提供该组件的生产版本以将其嵌入到不同的站点 My React 应用程序的 css正在被覆盖全局样
  • 如何在一个 EC2 实例上运行多个应用程序

    我有几个小型生产站点和一堆有趣的爱好者 实验应用程序等 我想在一个 EC2 实例上运行所有这些 我可以安装一次node js npm express 和 couchdb 然后在不同的端口上运行每个应用程序 并调整我的域注册表中的 dns 设
  • Numpy loadtxt 对数字进行四舍五入

    我正在使用 numpy loadtxt 函数读取大量数据 数据似乎已四舍五入 例如 文本文件中的数字是 3 79000000000005E 01 但 numpy 读取的数字是 37 9 我已在 loadtxt 调用中将 dypte 设置为
  • 相对 z 指数?

    我有一个弹出的 对话框 小部件 其 z 索引为 100 当我创建另一个弹出窗口 浮动 div 时 它出现在对话框小部件下方 因为我没有显式设置 z 索引新的弹出窗口 结构最终看起来像 div div div div div div div
  • Django 重定向功能保留旧的 url 路径

    问题是当我尝试使用时django shortcuts redirect在我的视图函数中 Django 不只是简单地打开新的 url 路径return redirect url 但将所需的 url 路径添加到当前 url 例子当前网址是 主页
  • 将二维数组传递给 C 函数的方法

    我一周前开始学习C语言 为了测试 我决定编写一个井字游戏 我有一块田地 int field 3 3 和一个函数 printField void printField int field 3 3 for int i 0 i lt 3 i fo
  • Java XPath 计算返回类型

    有没有办法确定 XPath 评估的返回类型是什么 我希望 XPath 尽可能通用地匹配 它应该匹配一个节点列表 如果不能匹配 则匹配一个节点 如果不能匹配 则匹配一个值 有没有一种简单的方法可以在Java中实现这个功能 JAXP XPath
  • 发生异常时记录响应正文

    我在用retrofit对于 http 调用gson作为转换器 在某些情况下 当 gson 尝试将响应转换为对象时 我会抛出异常 我想知道在这种情况下的实际响应是什么 例如 这是我收到的异常消息 Expected a string but w
  • 使用 linq 更新对象集合中的属性

    有一个对象列表 其对象结构如下 public class Schedule public int ID get set public string Name get set public Schedule 对数据执行 linq 查询我可以看
  • Android - 立即启动闹钟服务?

    我创建了一个启动接收器 每 5 分钟重复调用一次唤醒意图服务 但无法弄清楚如何在安装应用程序后立即启动该服务 我不想依赖用户在设备开始运行之前重新启动设备 到目前为止 这是我的代码 public class OnBootReceiver e
  • 让 Rails #destroy_all 运行得更快

    我想跑Alarm destroy all不过 每个警报都与许多警报相关联AlarmEvents 并且每个AlarmEvent与许多相关AlarmEvent Measurements 两个关联都标记为 dependent gt destroy
  • 如何强制输入日期格式为 dd/mm/yyyy? [复制]

    这个问题在这里已经有答案了 我有一个小问题 我正在开发一个网络系统 表单字段类型日期让我很头疼 该系统仅适用于巴西用户 因此日期格式应为 dd mm yyyy 当从使用葡萄牙语的计算机访问该网站时 HTML 表单字段类型的日期按照我想要的方
  • WPF RichTextBox 拼写检查 ComException

    我在尝试在某些 Windows 8 1 计算机上启用拼写检查时遇到异常 两者都有最新更新 操作系统语言是俄语 NET Framework 4 7 是俄语 System Reflection TargetInitationException
  • 使用 MouseUp 和 MouseDown 事件或其他事件模拟单击的最佳方法是什么?

    在 WPF 中 大多数控件都有MouseUp and MouseDown事件 以及鼠标按钮特定的变体 但不是简单的Click可以立即使用的事件 如果您想使用这些事件获得类似点击的行为 您需要处理这两个事件 我认为这有点痛苦 明显的问题是你不
  • 在两个 Rails 项目之间共享模型 - 使用 git 子模块?

    我有一个 Rails 网站 它分为两个独立的项目 公共网站和管理网站 由于两个站点都使用相同的数据库 因此模型在应用程序之间共享 实际上现在它们是重复的 我这里遇到的问题是 当公共项目中发生模型更新时 我需要将更改复制到管理项目中 我环顾四
  • Solr 停用词替换为 _ 符号

    我的自动建议中的 solr 停用词有问题 所有停用词均替换为 符号 例如 我在字段 deal title 中有文本 简单文本 当我尝试搜索单词 简单 时 solr 显示下一个结果 简单文本 但我期望 简单文本 有人可以解释一下为什么会这样工