效果图:
实体标注——测试过程中的JS代码:
var text = '这是一只小鸟和一个鸟笼'
var ent1='小鸟'
var ent2='鸟笼'
var ent3=''
function restext(){
var ori_text = text
var en1 = ent1
var en2 = ent2
var en3 = ent3
var ens=[]
var index=[]
var dict={}
dict['text']=ori_text
dict['entites']=[]
var inputens=[en1,en2, en3]
for (let i of inputens){
var ilen=i.length
if (ilen>0){
var temp=ens.unshift(i)/*添加数组元素*/
}/*去除长度为0的实体词*/
}
for (let i of ens){
var temp2=index.push(findindex(ori_text,i))
}/*实体词在句中的索引位置*/
for (j=0;j<ens.length;j++){
var ind=index[j]
dict['entites'].unshift([ens[j],ind[0],ind[1]])//添加数组元素
}
return dict
}
function findindex(text,entity) {
for (i=0;i<text.length;i++){
var substr=text.substring(i,Math.min(text.length,entity.length+i))//截取字符串
if (substr==entity){
return [i,entity.length+i]
}
}
return [-1,-1]
}
resdict=restext()
console.log(resdict)//返回object对象的具体值
其余代码:JS文件实现标注功能 · master · 追光女孩儿 / Django之数据标注平台 · GitCodehttps://gitcode.net/Hekena/django/-/tree/master/JS%E6%96%87%E4%BB%B6%E5%AE%9E%E7%8E%B0%E6%A0%87%E6%B3%A8%E5%8A%9F%E8%83%BD