我想为我的映射添加一些额外的属性,在这种特殊情况下,我想修改我的英文索引中的标题字段,以便它使用英文分析器.
应该非常简单,除了我有很多类型的标题字段,似乎不可能这样做.
我遇到的错误如下:将update_all_types设置为true以更新所有类型的[search_quote_analyzer].
但我无法找到关于如何或在何处设置此'update_all_types'参数的单一参考.
这是我在Sense中使用的非常简单的代码:
PUT /my_index/_mapping/my_type
{
"properties": {
"title": {
"type": "string",
"analyzer": "english"
}
}
}
Run Code Online (Sandbox Code Playgroud)
那么,如果在其他类型中使用相同的字段,我该如何才能完成这项工作呢?
这是错误消息:
"type": "illegal_argument_exception",
"reason": "Mapper for [title] conflicts with existing mapping in other types:
[mapper [title] has different [analyzer], mapper [title] is used by
multiple types. Set update_all_types to true to update [search_analyzer]
across all types., mapper [title] is used by multiple types. Set
update_all_types to true to update [search_quote_analyzer] across
all types.]"
Run Code Online (Sandbox Code Playgroud)
所以我似乎需要在某处设置'update_all_types:true',但文档在那部分失败了.
我想要一个使用上标的有序列表,所以我的 html 中是这样的:
<ol class="sup_n">
<li><p>Item 1</p></li>
<li><p>Item 2</p></li>
<li><p>Item 3</p><p>Item 3b</p></li>
</ol>
Run Code Online (Sandbox Code Playgroud)
但让它显示为
1)项目 1
2)项目 2
3)项目 3a
项目 3b
但是,现有的解决方案仅显示它适用于仅包含文本的列表项。当存在其他内容(span、div、p 标签、图像、其他列表并命名)时,结果并不完全正确。由于我的 html 包含列表“样式”的混合(有些只是文本,有些是各种标签的混合),我希望它足够灵活,可以处理 li 标签内的任何内容,就好像它是“普通”标签一样。我希望我说得有道理,说实话我不是一个真正的 CSS 向导。
这是我使用的代码(在上述页面上找到的结构思想,添加了上标样式):
<ol class="sup_n">
<li><p>Item 1</p></li>
<li><p>Item 2</p></li>
<li><p>Item 3</p><p>Item 3b</p></li>
</ol>
Run Code Online (Sandbox Code Playgroud)
ol.sup_n {
counter-reset: item;
margin: 0;
padding: 0;
list-style:none;
}
.sup_n li {
display: block;
margin-left: 1em;
}
.sup_n li:before {
content: counter(item) ")";
counter-increment: item;
display: inline-block;
text-align: right;
width: 3em;
padding-right: 0.5em;
margin-left: -3.5em; …Run Code Online (Sandbox Code Playgroud)是否可以在有序列表中增加星号?所以如果我有类似的东西
<ol class="ast">
<li>item 1</li>
<li>item 2</li>
<li>item 3</li>
</ol>
Run Code Online (Sandbox Code Playgroud)
这将显示在我的页面上,如下所示
* 第 1 项
** 第 2 项
*** 第 3 项
使用CSS?
我有一些包含十六进制字符串变体的字符串(如果有人愿意,来源是 framemaker)。因此,字符串可能看起来像
这是一些带有十六进制代码\x27 s 的句子,我们需要修复它。
并且需要更改为
这是一些带有一些十六进制代码的句子,我们需要修复它。
实际上,单个字符串中可以包含其中的一些,因此我正在寻找浏览文本的最佳方式,捕获所有十六进制代码(看起来像 \x## )并将所有这些代码替换为正确的字符. 我制作了一个包含所有字符的 xml 列表/查找表,如下所示:
<xsl:param name="reflist">
<Code Value="\x27">'</Code>
<Code Value="\x28">(</Code>
<Code Value="\x29">)</Code>
<Code Value="\x2a">*</Code>
<Code Value="\x2b">+</Code>
<!-- much more like these... -->
</xsl:param>
Run Code Online (Sandbox Code Playgroud)
现在我使用了一个简单的替换参数,但是字符太多,无法使用。
做到这一点的最佳方法是什么?
假设我的数据库中有以下(虚构的)条目:
ABC-X123
ABC-XY56
XYZ-A12
OP-123
HJK098
Run Code Online (Sandbox Code Playgroud)
获取第一个数值之前的值的最佳方法是什么,这样我就会得到
ABC-X
ABC-XY
XYZ-A
OP-
HJK
Run Code Online (Sandbox Code Playgroud)
我知道如何使用函数来完成此操作,但我没有可用的选项,因此如果可行,应该在 SQL 语句中完成。