updated 结果不输出“兄弟”、“姐妹”等合称

This commit is contained in:
PASSER-BY 2022-03-26 12:43:40 +08:00
parent 65705dde04
commit e8b38892f2
6 changed files with 42 additions and 36 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -249,8 +249,8 @@
<div class="item">
<p class="q">5. 根据年龄推导可能性:</p>
<p class="a">哥哥的表姐 = 姑表姐、舅表姐</p>
<p class="a">堂妹的姐姐 = 堂姐妹</p>
<p class="a">弟弟的表哥 = 姑表兄弟、舅表兄</p>
<p class="a">堂妹的姐姐 = 堂姐、堂</p>
<p class="a">弟弟的表哥 = 姑表哥、姑表弟、舅表哥、舅表</p>
</div>
</li>
<li>

View File

@ -276,16 +276,16 @@
'h,f,[xs|xs,h]':['姑公婆'],
'h,m,[xb|xb,w]':['舅公婆'],
'h,m,[xs|xs,h]':['姨公婆'],
'[ob|lb]':['兄弟','亲兄弟','同胞兄弟'],
'[ob|lb],w':['兄弟媳妇','兄弟妇'],
'[os|ls]':['姐妹','亲姐妹','同胞姐妹'],
'[os|ls],h':['姐妹夫'],
'[xb|xs]':['兄弟姐妹','同胞','同胞兄弟姐妹','手足'],
'[ob|os]':['哥哥姐姐'],
'[lb|ls]':['弟弟妹妹'],
'[ob|ob,w]':['哥哥嫂嫂'],
'[f,xb|m,xs],[s|d]':['从兄弟姐妹','从姐妹兄弟'],
'[f,xs|m,xb],[s|d]':['表兄弟姐妹','表姐妹兄弟','老表'],
'[f,xb|m,xs],s':['从兄弟'],
'[f,xb|m,xs],d':['从姐妹'],
'[f,xs|m,xb],s':['表兄弟'],
'[f,xs|m,xb],d':['表姐妹'],
'f,xb,[s|d]':['堂兄弟姐妹','堂姐妹兄弟','从父兄弟姐妹'],
'm,xs,[s|d]':['姨兄弟姐妹','姨姐妹兄弟','从母兄弟姐妹'],
'f,xs,[s|d]':['姑表兄弟姐妹'],
@ -308,7 +308,7 @@
'[s|d]#[s|d],[s|d]':['儿孙','子孙','孙息'],
'[s,w|d,h],[f|m]':['亲家','儿女亲家'],
'[s,w|d,h],f':['亲家公','亲家父','亲家翁','亲家世翁','姻翁'],
'[s,w|d,h],m':['亲家母','亲家婆','亲家姆','姻姆'],
'[s,w|d,h],m':['亲家母','亲家婆','亲家姆','亲姆','姻姆'],
'[s,w|d,h],[f|m],f':['姻太翁'],
'[s,w|d,h],[f|m],m':['姻太姆'],
// 主线
@ -352,7 +352,7 @@
'f,f,f,xb,w':['族曾祖母'],
// 祖父辈
'f,f':['爷爷','祖父','奶爷','阿爷','阿公','嗲嗲','二世祖'],
'f,m':['奶奶','祖母','阿嬷','阿嫲','嫲嫲','婻婻','娭毑'],
'f,m':['奶奶','祖母','阿嬷','阿嫲','嫲嫲','婻婻','娭毑','嗯奶'],
'm,f':['外公','外祖父','姥爷','阿公','客公','外爷','舅家爷','毑父','毑爷','嘎公'],
'm,m':['外婆','外祖母','姥姥','姥娘','姥婆','毑婆','阿婆','阿嬷','阿嫲','嫲嫲','外奶','客婆','舅家婆','毑母','毑毑','嘎嘎'],
'f,f,ob':['伯公','伯祖','伯翁','伯爷','伯祖父','大爷爷','大爷','大公','伯爷爷','大伯公','大阿爷','x伯公','x阿爷'],
@ -475,6 +475,10 @@
'w,m,m,m':['外曾外祖岳母','外曾外祖丈母','外曾外祖丈母娘','祖姥丈母娘','太姥丈母娘'],
'w,f,f':['祖岳父','太岳父','奶岳父','祖丈人','爷丈人','奶爷丈人','奶丈爷','奶丈人','老丈爷'],
'w,f,m':['祖岳母','太岳母','奶岳母','祖丈母','祖丈母娘','奶丈母娘','奶丈姥','奶丈母','老丈姥'],
'w,f,ob':['伯岳父','姻伯','姻伯丈'],
'w,f,ob,w':['伯岳母','姻姆'],
'w,f,lb':['叔岳父','姻叔','姻叔丈'],
'w,f,lb,w':['叔岳母','姻婶'],
'w,m,f':['外祖岳父','外祖丈人','外太岳父','姥岳父','姥丈爷','姥丈人','姥爷丈人','老丈爷'],
'w,m,m':['外祖岳母','外祖丈母娘','外祖丈母','外太岳母','姥岳母','姥丈姥','姥丈母','姥丈母娘'],
'w,f':['岳父','岳丈','岳老子','老干爷','老丈人','丈母爷','老丈杆子','丈人爹','丈爷爹','岳翁','丈人','丈父','丈爷','外父','妻父','泰山','外舅','老亲爷'],
@ -496,9 +500,7 @@
'ob':['哥哥','哥','兄','老哥','兄长','阿哥','大佬','胞哥','大哥','x哥'],
'ob,w':['嫂子','嫂','嫂嫂','哥嫂','兄嫂','兄妇','兄妻','大嫂','大嫂子','阿嫂','x嫂'],
'lb':['弟弟','弟','胞弟','老弟','阿弟','细佬','小弟','幺弟','细弟','满弟','x弟'],
'lb,w':['弟妹','弟媳','弟媳妇','弟妇','x弟妹'],
'xb':['兄弟','亲兄弟','同胞兄弟'],
'xb,w':['兄弟媳妇','兄弟妇'],
'lb,w':['弟妹','弟媳','弟媳妇','弟新妇','弟妇','x弟妹'],
'0,xb,w,xb,s':['舅眷舅男'],
'1,xb,w,xb,s':['叔眷舅男'],
'0,xb,w,xb,d':['舅眷舅女'],
@ -508,14 +510,14 @@
'0,xb,w,xs,d':['舅眷姨女'],
'1,xb,w,xs,d':['叔眷姨女'],
'0,xb,s':['娘家侄子','娘家侄'],
'xb,s':['侄子','侄男','侄儿','阿侄','侄'],
'xb,s':['侄子','侄男','侄儿','阿侄','侄','从子'],
'xb,s,s':['侄孙','从孙'],
'xb,d':['侄女','侄囡','从女'],
// 姐妹
'os':['姐姐','姐','阿姊','胞姐','大姐','阿姐','家姐','x姐'],
'os,h':['姐夫','姐丈','姐婿','姐夫哥','胞姐夫','大姐夫','x姐夫'],
'ls':['妹妹','妹','胞妹','老妹','阿妹','小妹','幺妹','细妹','满妹','x妹'],
'ls,h':['妹夫','妹丈','妹婿','妹弟','胞妹夫','小妹夫','x妹夫'],
'xs':['姐妹','亲姐妹','同胞姐妹'],
'xs,h':['姐妹夫'],
'0,xs,h,xb,s':['姨姻叔男'],
'1,xs,h,xb,s':['姑姻叔男'],
'0,xs,h,xb,d':['姨姻叔女'],
@ -531,7 +533,7 @@
'xs,s':['外甥','外甥男','外甥儿','外甥子','外甥儿子'],
'xs,d':['外甥女','外甥囡','外甥女儿','外甥闺女'],
// 堂表亲
'f,xb,s,s':['堂侄','堂侄子','堂侄儿','堂侄男','从父侄男','叔伯侄男','从父侄子','叔伯侄子','从子'],
'f,xb,s,s':['堂侄','堂侄子','堂侄儿','堂侄男','从父侄男','叔伯侄男','从父侄子','叔伯侄子'],
'f,xb,s,s,w':['堂侄媳妇','堂侄妇','从父侄妇','叔伯侄妇'],
'f,xb,d,s':['堂外甥','堂甥男','从父甥男','叔伯甥男'],
'f,xb,d,s,w':['堂甥媳妇','堂甥妇','从父甥妇','叔伯甥妇'],
@ -605,7 +607,7 @@
's,d,d,s,w':['曾外曾外孙媳妇'],
's,d,d,d':['曾外曾外孙女'],
's,d,d,d,h':['曾外曾外孙女婿'],
'd':['女儿','千金','掌上明珠','息女','闺女','囡女','乖囡','囡囡','丫头','姑娘','妮子','女亲','长女','次女','幼女','女','阿女','女女','x女儿'],
'd':['女儿','千金','掌上明珠','息女','闺女','囡女','乖囡','囡囡','囡嗯','丫头','姑娘','妮子','女亲','长女','次女','幼女','女','阿女','女女','x女儿'],
'd,h':['女婿','姑爷','女婿子','女婿儿','儿婿','子婿','息婿','囝婿','x女婿'],
'd,s':['外孙','外孙子','外孙儿'],
'd,s,w':['外孙媳妇','外孙妇','外孙新妇'],
@ -853,7 +855,7 @@
'{G1},s&o,w':['嫂','兄妇'],
'{G1},s&l':['弟'],
'{G1},s&l,w':['弟媳','弟妇'],
'{G1},s':['兄弟'],
'{G1},[s&o|s&l]':['兄弟'],
'{G1},s,s':['侄男'],
'{G1},s,s,w':['侄妇'],
'{G1},s,s,s':['侄孙男'],
@ -870,7 +872,7 @@
'{G1},d&o,h':['姐夫'],
'{G1},d&l':['妹'],
'{G1},d&l,h':['妹夫'],
'{G1},d':['姐妹'],
'{G1},[d&o|d&l]':['姐妹'],
'{G1},d,s':['甥男'],
'{G1},d,s,w':['甥妇'],
'{G1},d,s,s':['甥孙男'],
@ -1100,18 +1102,18 @@
'{M0},m,xs,d&o,h':['姨表姊婿'],
'{M0},m,xs,d&l':['姨表妹'],
'{M0},m,xs,d&l,h':['姨表妹婿'],
'{M0},xb&o':['兄'],
'{M0},xb&o,w':['兄妇'],
'{M0},xb&l':['弟'],
'{M0},xb&l,w':['弟妇'],
'{M0},ob':['兄'],
'{M0},ob,w':['兄妇'],
'{M0},lb':['弟'],
'{M0},lb,w':['弟妇'],
'{M0},xb,s':['侄男'],
'{M0},xb,s,w':['侄妇'],
'{M0},xb,d':['侄女'],
'{M0},xb,d,h':['侄婿'],
'{M0},xs&o':['姊'],
'{M0},xs&o,h':['姊婿'],
'{M0},xs&l':['妹'],
'{M0},xs&l,h':['妹婿'],
'{M0},os':['姊'],
'{M0},os,h':['姊婿'],
'{M0},ls':['妹'],
'{M0},ls,h':['妹婿'],
'{M0},xs,s':['甥男'],
'{M0},xs,s,w':['甥妇'],
'{M0},xs,d':['甥女'],
@ -1391,7 +1393,7 @@
if(!items.length){
var l = id.replace(/x/g,'l');
var o = id.replace(/x/g,'o');
items = items.concat(getData(l),getData(o));
items = items.concat(getData(o),getData(l));
}
}
return items;
@ -1459,7 +1461,11 @@
var arr = id.split(',');
return arr.map(function(sign){
var key = sign.replace(/&[ol]/,'');
return _data[key][0];
var data = Object.assign(_data,{
'xb':['兄弟'],
'xs':['姐妹'],
});
return data[key][0];
}).join('的');
}

View File

@ -11,10 +11,10 @@ test('relationship.js show to be tested', function (t) {
t.deepEqual(relationship({text:'老婆的老公',sex:1}),['自己']);
t.deepEqual(relationship({text:'老婆的外孙的姥爷',sex:1}),['自己']);
t.deepEqual(relationship({text:'表姐的哥哥',sex:1}),['姑表哥','舅表哥']);
t.deepEqual(relationship({text:'表姐的妹妹',sex:1}),['姑表姐妹','舅表姐妹']);
t.deepEqual(relationship({text:'弟弟的表哥',sex:1}),['姑表兄弟', '舅表兄弟']);
t.deepEqual(relationship({text:'表姐的妹妹',sex:1}),['姑表姐','姑表妹','舅表姐','舅表妹']);
t.deepEqual(relationship({text:'弟弟的表哥',sex:1}),['姑表哥','姑表弟','舅表哥','舅表弟']);
t.deepEqual(relationship({text:'老公的老婆的儿子的爸爸',sex:0}),['老公']);
t.deepEqual(relationship({text:'哥哥的弟弟的爸爸的儿子',sex:1}),['弟','自己']);
t.deepEqual(relationship({text:'哥哥的弟弟的爸爸的儿子',sex:1}),['哥哥','弟弟','自己']);
t.deepEqual(relationship({text:'爸爸的舅舅',sex:0,reverse:true}),['甥孙女']);
t.deepEqual(relationship({text:'舅爷爷',type:'chain'}),['爸爸的妈妈的兄弟']);
t.deepEqual(relationship({text:'堂兄弟的孩子',sex:1}),['堂侄','堂侄女']);
@ -22,7 +22,7 @@ test('relationship.js show to be tested', function (t) {
t.deepEqual(relationship({text:'姑妈',target:'舅妈',reverse:true}),['兄弟眷兄妇','兄弟眷弟妇']);
t.deepEqual(relationship({text:'舅妈',target:'女儿',reverse:true}),['姑甥孙女','姑甥外孙女']);
t.deepEqual(relationship({text:'老公的父母',target:'孩子'}),['爷爷','奶奶']);
t.deepEqual(relationship({text:'爸爸的哥哥的弟弟的儿子'}),['堂兄弟', '兄弟', '自己']);
t.deepEqual(relationship({text:'爸爸的哥哥的弟弟的儿子'}),['堂哥','堂弟','哥哥','弟弟','自己']);
t.deepEqual(relationship({text:'外婆',target:'女婿',reverse:true}),['外曾孙女婿','外曾外孙女婿']);
t.deepEqual(relationship({text:'我',target:'爸爸'}),['儿子','女儿']);
t.deepEqual(relationship({text:'爱人',target:'娘家侄子'}),['姑丈']);

View File

@ -249,8 +249,8 @@
<div class="item">
<p class="q">5. 根據年齡推導可能性:</p>
<p class="a">哥哥的表姐 = 姑表姐、舅表姐</p>
<p class="a">堂妹的姐姐 = 堂姐妹</p>
<p class="a">弟弟的表哥 = 姑表兄弟、舅表兄</p>
<p class="a">堂妹的姐姐 = 堂姐、堂</p>
<p class="a">弟弟的表哥 = 姑表哥、姑表弟、舅表哥、舅表</p>
</div>
</li>
<li>