OpenRefine 中的模式匹配 JSON
Pattern Matching in OpenRefine JSON
喜欢 OpenRefine 以及它的易用性,我一直在研究提取/应用位,这对我使用 OpenRefine 的目的非常有用。我希望它能够使用通配符来匹配应用部分中的模式。
所以在下面的示例中,我有一个名为 Cluster 的新列,其中有一些项目将是
Test
This is a test title
Test 123
123 Test
如何匹配这些并将单元格设置为测试标题,注意文本有时可能类似于 1435365736 测试标题。它不会总是有相同的开始和结束,但在标题中会有测试。
我试过了./?test./?以及围绕测试的星号,均无济于事,将不胜感激。
{
"op": "core/mass-edit",
"engineConfig": {
"facets": [
{
"type": "text",
"name": "Cluster",
"columnName": "Cluster",
"query": "test",
"mode": "text",
"caseSensitive": false,
"invert": false
}
],
"mode": "row-based"
},
"columnName": "Title_Cluster",
"expression": "value",
"edits": [
{
"from": [
"This is a test title"
],
"fromBlank": false,
"fromError": false,
"to": "Test Titles"
}
],
"description": "Mass edit cells in column Title_Cluster"
}
首先,我需要警告您,提取操作/应用操作工具尚未完全开发,如果用于原始数据以外的任何其他内容,则存在许多限制。
任何最终被记录为 mass-edit
的东西都不太可能用于重播不同的数据。对于这个用例,我建议使用 replace
函数之类的东西,使用正则表达式模式作为要替换的字符串,比如:
value.replace(/.*[Tt]est.*/,'Test Titles')
或
value.replace(/.*test.*/i,'Test Titles')
i
标志告诉正则表达式忽略大小写,方括号括起一组允许的字符。
喜欢 OpenRefine 以及它的易用性,我一直在研究提取/应用位,这对我使用 OpenRefine 的目的非常有用。我希望它能够使用通配符来匹配应用部分中的模式。
所以在下面的示例中,我有一个名为 Cluster 的新列,其中有一些项目将是
Test
This is a test title
Test 123
123 Test
如何匹配这些并将单元格设置为测试标题,注意文本有时可能类似于 1435365736 测试标题。它不会总是有相同的开始和结束,但在标题中会有测试。
我试过了./?test./?以及围绕测试的星号,均无济于事,将不胜感激。
{
"op": "core/mass-edit",
"engineConfig": {
"facets": [
{
"type": "text",
"name": "Cluster",
"columnName": "Cluster",
"query": "test",
"mode": "text",
"caseSensitive": false,
"invert": false
}
],
"mode": "row-based"
},
"columnName": "Title_Cluster",
"expression": "value",
"edits": [
{
"from": [
"This is a test title"
],
"fromBlank": false,
"fromError": false,
"to": "Test Titles"
}
],
"description": "Mass edit cells in column Title_Cluster"
}
首先,我需要警告您,提取操作/应用操作工具尚未完全开发,如果用于原始数据以外的任何其他内容,则存在许多限制。
任何最终被记录为 mass-edit
的东西都不太可能用于重播不同的数据。对于这个用例,我建议使用 replace
函数之类的东西,使用正则表达式模式作为要替换的字符串,比如:
value.replace(/.*[Tt]est.*/,'Test Titles')
或
value.replace(/.*test.*/i,'Test Titles')
i
标志告诉正则表达式忽略大小写,方括号括起一组允许的字符。