entities = ({confidence = "<null>"; end = 113; entity = DATE; extractor = "ner_spacy";start = 103;value = "five years";
},
{confidence = "<null>"; end = 177;entity = ORG; extractor = "ner_spacy";start = 163; value = "xyz Company";
}
);
这是后端数据,我需要使用remove在字符串中显示并在字符串文本中添加新值:
示例:“根据您在{{ORG}}的{{years_of_experience}}经验,什么样的过程改进或标准设置?”
答案:0 --->五年数组和1 ---> xyz公司数组 我需要显示此数组0和1,而不是用大括号括起来。
在xyz公司的五年经验中,什么样的过程改进或标准设置?
答案 0 :(得分:0)
我试图为您的问题找到解决方案,
这是我用作示例的JSON response
[
{
"confidence": "<null>",
"end": 113,
"entity": "DATE",
"extractor": "ner_spacy",
"start": 103,
"value": "five years"
},
{
"confidence": "<null>",
"end": 177,
"entity": "ORG",
"extractor": "ner_spacy",
"start": 163,
"value": "xyz Company"
}
]
使用JSON response
将Codable
解析为array of Entity
对象,即
struct Entity: Codable {
var confidence: String?
var end: Int?
var entity: String?
var extractor: String?
var start: Int?
var value: String?
}
我在响应中使用entity key
来确定要替换的值,即
if let data = str.data(using: .utf8) { //You'll get this data from API response
let entities = try? JSONDecoder().decode([Entity].self, from: data)
var sentence = "In your {{DATE}} of experience at {{ORG}}, what kind of process improvements or standards setup?"
entities?.forEach({
if let entity = $0.entity, let value = $0.value {
sentence = sentence.replacingOccurrences(of: "{{\(entity)}}", with: value)
}
})
print(sentence) //In your five years of experience at xyz Company, what kind of process improvements or standards setup?
}
在上面的代码中,我遍历了entities array
并将{{entity}}
的每次出现都替换为相应的value
,即
"{{DATE}}" is replaced with "five years"
"{{ORG}}" is replaced with "xyz Company"
如果您仍然遇到任何问题,或者如果我对问题陈述的理解不充分,请告诉我。
答案 1 :(得分:0)
它不适用于动态数据,在某些文本中不包含任何键值和{{}},在这种情况下,我们将如何编写它。
我需要显示带有此类数据的表格视图并播放语音消息。
示例:q1)您能否向我介绍一下您自己,重点介绍与项目经理和您从事过的不同领域相关的经验
答案:用户说出答案,发送后端并将响应存储在字典中。
Q2)根据您在{{ORG}}的{{years_of_experience}}经验,什么样的流程改进或标准设置? 注意:1)我需要替换{{}}内的文本值 2)对于某些问题文本,没有实体键和值。 3)我们需要存储{{ORG}}值和“何时有问题”文本 {{ORG}},我们应该替换实体的值。
Q3)您能告诉我一些软件开发方法论,以及您使用过的和满意的内容吗?
q4)太好了。您能说出您在{{industry}}网域和{{years_of_experience}}中所支持的几个客户吗?
------------很快。
每当用相应文本说出答案时,我都会存储实体键和值响应