updated 新增对粤语的支持

This commit is contained in:
PASSER-BY 2021-11-23 22:45:35 +08:00
parent b2d6c3be22
commit e7315578b9
3 changed files with 289 additions and 89 deletions

187
dist/relationship.js vendored
View File

@ -20,7 +20,7 @@
exp:/^(.+)&l([^#]+)&o/g,
str:'$1$2'
},
{//有大有小,增加不确定性
{//有大有小,增加不确定性
exp:/^(.+)?,o([sb])([^#]+)&l/g,
str:'$1,x$2$3'
},
@ -202,10 +202,10 @@
'[s|d]':['子女','儿女','小孩','孩子','孩儿','宝宝','娃'],
'[s,s|s,d|d,s|d,d]':['孙辈'],
// 本家
'f':['爸爸','父亲','阿爸','老爸','老窦','爸','父','爹','爹爹','爹地','爹啲','老爹','大大','老爷子'],
'f':['爸爸','父亲','老爸','爸','父','爹','爹爹','爹地','爹啲','老爹','大大','老爷子'],
// 爷爷
'f,f':['爷爷','祖父','阿爷','奶爷','阿公','老爷'],
'f,f,f':['曾祖父','曾祖','太爷','太爷爷','太公','祖公','祖奶爷','太老爷'],
'f,f':['爷爷','祖父','奶爷','阿公','老爷'],
'f,f,f':['曾祖父','曾祖','太爷','太爷爷','祖公','祖奶爷','太老爷'],
'f,f,f,f':['高祖父','老太奶爷','老太爷','祖太爷','祖太爷爷','祖太公','高王父'],
'f,f,f,f,f':['天祖父','高祖'],
'f,f,f,f,f,f':['烈祖父','烈祖'],
@ -380,7 +380,7 @@
'f,f,f,xs,d,s&l,w':['姑表姑表叔母'],
'f,f,f,xs,d,d':['姑表姑表姑母'],
'f,f,f,xs,d,d,h':['姑表姑表姑父'],
'f,f,m':['曾祖母','太奶奶','太婆','祖婆','祖奶奶'],
'f,f,m':['曾祖母','太奶奶','祖婆','祖奶奶'],
'f,f,m,f':['高外祖父','老太姥爷','祖太姥爷','祖太公','高王父'],
'f,f,m,m':['高外祖母','老太姥姥','祖太姥姥','祖太姥娘','祖太婆','高王母'],
// 舅表*
@ -437,9 +437,9 @@
'f,f,xb':['堂祖父','从祖祖父','从祖父','x爷爷','x大爷'],
'f,f,xb,w':['堂祖母','从祖祖母','从祖母'],
// 再从父
'f,f,xb,s&o':['堂伯','堂伯父','从父伯父'],
'f,f,xb,s&o':['堂伯','堂伯父','从父伯父','叔伯伯'],
'f,f,xb,s&o,w':['堂伯母','从父伯母'],
'f,f,xb,s&l':['堂叔','堂叔父','从父叔父','叔伯叔父'],
'f,f,xb,s&l':['堂叔','堂叔父','从父叔父','叔伯叔父','叔伯叔'],
'f,f,xb,s&l,w':['堂婶','堂叔母','堂婶母','从父叔母','叔伯叔母'],
'f,f,xb,s,s&o':['从堂兄','再从父兄','再从兄','从祖兄'],
'f,f,xb,s,s&o,w':['从堂嫂','再从父嫂','再从嫂'],
@ -466,7 +466,7 @@
'f,f,xb,s,d,d':['从堂外甥女','再从父外甥女'],
'f,f,xb,s,d,d,h':['从堂甥女婿','再从父甥女婿'],
// 从父姑表
'f,f,xb,d':['堂姑','堂姑妈','堂姑母','从父姑母','叔伯姑母'],
'f,f,xb,d':['堂姑','堂姑妈','堂姑母','从父姑母','叔伯姑母','叔伯姑'],
'f,f,xb,d,h':['堂姑丈','堂姑爸','堂姑父','从父姑父','叔伯姑父'],
'f,f,xb,d,s&o':['堂姑表哥','从父姑表哥'],
'f,f,xb,d,s&o,w':['堂姑表嫂','从父姑表嫂'],
@ -528,8 +528,8 @@
'f,f,xs,d,d,d':['堂姑表表甥女','姑表姑表甥女'],
'f,f,xs,d,d,d,h':['堂姑表表甥婿','姑表姑表甥婿'],
// 奶奶
'f,m':['奶奶','祖母','阿嫲','阿嬷','嫲嫲'],
'f,m,f':['曾外祖父','外太公','太姥爷'],
'f,m':['奶奶','祖母','嫲嫲'],
'f,m,f':['曾外祖父','太姥爷'],
'f,m,f,f':['曾外曾祖父','祖太爷','祖太爷爷','祖太公','高王父'],
'f,m,f,m':['曾外曾祖母','祖太太','祖太奶奶','祖太婆','高王母'],
// 从父*
@ -576,7 +576,7 @@
'f,m,f,xs,d,s&l,w':['姑表姨表叔母'],
'f,m,f,xs,d,d':['姑表姨表姑母'],
'f,m,f,xs,d,d,h':['姑表姨表姑父'],
'f,m,m':['曾外祖母','外太婆','太姥姥'],
'f,m,m':['曾外祖母','太姥姥'],
'f,m,m,f':['曾外曾外祖父','祖太姥爷','祖太公','高王父'],
'f,m,m,m':['曾外曾外祖母','祖太姥姥','祖太姥娘','祖太婆','高王母'],
// 舅表*
@ -708,10 +708,10 @@
'f,m,xs,d,d,d':['从母姑表甥女'],
'f,m,xs,d,d,d,h':['从母姑表甥婿'],
// 从父
'f,ob':['伯父','伯伯','阿伯','大伯','大爹','大爸','x伯'],
'f,ob,w':['伯母','伯妈','伯娘','大娘','大妈','x妈'],
'f,lb':['叔叔','叔父','阿叔','叔爸','叔爹','仲父','小叔','小爹','小爸','幺爸','x叔','叔'],
'f,lb,w':['婶婶','婶母','婶娘','婶爹','婶妈','小婶','小婶娘','婶子','婶儿','家婶','叔母','阿婶','叔妈','叔娘','季母','小娘','小妈','幺婶','x婶','婶'],
'f,ob':['伯父','伯伯','阿伯','大爹','大爸','x伯'],
'f,ob,w':['伯母','伯妈','大娘','大妈','x妈'],
'f,lb':['叔叔','叔父','叔爸','叔爹','仲父','小叔','小爹','小爸','幺爸','x叔','叔'],
'f,lb,w':['婶婶','婶母','婶娘','婶爹','婶妈','小婶','小婶娘','婶子','婶儿','家婶','叔母','叔妈','叔娘','季母','小娘','小妈','幺婶','x婶','婶'],
'f,xb,w,f':['叔眷外祖父','叔眷王父','叔眷毑父','叔眷姥爷','眷姥爷'],
'f,xb,w,m':['叔眷外祖女','叔眷王母','叔眷毑母','叔眷姥姥','眷姥姥'],
'f,xb,w,xb':['叔眷舅父','眷舅父'],
@ -756,13 +756,13 @@
'f,xb,s,w,xs&o,h':['从父兄弟眷姊婿'],
'f,xb,s,w,xs&l':['从父兄弟眷妹'],
'f,xb,s,w,xs&l,h':['从父兄弟眷妹婿'],
'f,xb,s,s':['堂侄','堂侄子','堂侄男','从父侄男','叔伯侄男'],
'f,xb,s,s':['堂侄','堂侄子','堂侄男','从父侄男','叔伯侄男','叔伯侄'],
'f,xb,s,s,w':['堂侄媳妇','堂侄妇','从父侄妇','叔伯侄妇'],
'f,xb,s,s,s':['堂侄孙男','从父侄孙男','堂侄孙','从父侄孙'],
'f,xb,s,s,s,w':['堂侄孙妇','从父侄孙妇'],
'f,xb,s,s,d':['堂侄孙女','从父侄孙女','堂侄孙','从父侄孙'],
'f,xb,s,s,d,h':['堂侄孙婿','从父侄孙婿'],
'f,xb,s,d':['堂侄女','从父侄女','叔伯侄女','堂侄'],
'f,xb,s,d':['堂侄女','从父侄女','叔伯侄女','堂侄','叔伯侄'],
'f,xb,s,d,h':['堂侄女婿','堂侄婿','从父侄婿','叔伯侄婿'],
'f,xb,s,d,s':['堂侄外孙男','从父侄外孙男','堂侄外孙','从父侄外孙'],
'f,xb,s,d,s,w':['堂侄外孙妇','从父侄外孙妇'],
@ -782,13 +782,13 @@
'f,xb,d,h,xs&o,h':['从父姊妹姻姊婿'],
'f,xb,d,h,xs&l':['从父姊妹姻妹'],
'f,xb,d,h,xs&l,h':['从父姊妹姻妹婿'],
'f,xb,d,s':['堂外甥','堂甥男','从父甥男','堂甥'],
'f,xb,d,s':['堂外甥','堂甥男','从父甥男','叔伯甥','堂甥'],
'f,xb,d,s,w':['堂甥媳妇','堂甥妇','从父甥妇'],
'f,xb,d,s,s':['堂甥孙男','从父甥孙男','堂甥孙','从父甥孙'],
'f,xb,d,s,s,w':['堂甥孙妇','从父甥孙妇'],
'f,xb,d,s,d':['堂甥孙女','从父甥孙女','堂甥孙','从父甥孙'],
'f,xb,d,s,d,h':['堂甥孙婿','从父甥孙婿'],
'f,xb,d,d':['堂外甥女','堂甥女','从父甥女','堂甥'],
'f,xb,d,d':['堂外甥女','堂甥女','从父甥女','叔伯甥','堂甥'],
'f,xb,d,d,h':['堂甥女婿','堂甥婿','从父甥婿'],
'f,xb,d,d,s':['堂甥外孙男','从父甥外孙男','堂甥外孙','从父甥外孙'],
'f,xb,d,d,s,w':['堂甥外孙妇','从父甥外孙妇'],
@ -801,7 +801,7 @@
'f,xs,h':['姑丈','姑父','姑爸','姑夫','x姑丈','x姑父'],
'f,xs,h,f':['姑姻祖父','姑姻王父','姑姻爷爷','姻爷爷'],
'f,xs,h,m':['姑姻祖母','姑姻王父','姑姻奶奶','姻奶奶'],
'f,xs,h,ob':['姑姻伯父','姻伯父','姻世伯'],
'f,xs,h,ob':['姑姻伯父','姻伯父'],
'f,xs,h,ob,w':['姑姻伯母','姻伯母'],
'f,xs,h,lb':['姑姻叔父','姻叔父'],
'f,xs,h,lb,w':['姑姻叔母','姻叔母'],
@ -864,9 +864,9 @@
'f,xs,d,d,d':['姑表甥外孙女','表甥外孙女','姑表甥外孙','表甥外孙'],
'f,xs,d,d,d,h':['姑表甥外孙婿','表甥外孙婿'],
// 外家
'm':['妈妈','母亲','老妈','阿妈','老母','老妈子','妈','母','娘','娘亲','妈咪'],
'm':['妈妈','母亲','老妈','老妈子','妈','母','娘','娘亲','妈咪'],
// 外公
'm,f':['外公','姥爷','外祖父','外王父','阿公','毑父'],
'm,f':['外公','外祖父','外王父','客公','外爷','毑父'],
'm,f,f':['外曾祖父','曾外祖父','外太祖父','外曾王父','外太公','外太爷爷','太外祖父'],
'm,f,f,f':['外高祖父','高外祖父','祖太爷','祖太爷爷','祖太公','高王父'],
'm,f,f,m':['外高祖母','高外祖母','祖太太','祖太奶奶','祖太婆','高王母'],
@ -1038,8 +1038,8 @@
'm,f,xs,d,d,d':['姑表姨表甥女'],
'm,f,xs,d,d,d,h':['姑表姨表甥婿'],
// 外婆
'm,m':['外婆','外祖母','外王母','姥姥','阿婆','毑母'],
'm,m,f':['外曾外祖父','外太外公','外太姥爷'],
'm,m':['外婆','外祖母','外王母','婆','毑母'],
'm,m,f':['外曾外祖父','外太姥爷'],
'm,m,f,f':['外曾外曾祖父','祖太爷','祖太爷爷','祖太公','高王父'],
'm,m,f,m':['外曾外曾祖母','祖太太','祖太奶奶','祖太婆','高王母'],
// 从父*
@ -1078,7 +1078,7 @@
'm,m,f,xs,d,s,w':['姑表姨表舅母'],
'm,m,f,xs,d,d':['姑表姨表姨母'],
'm,m,f,xs,d,d,h':['姑表姨表姨父'],
'm,m,m':['外曾外祖母','外太外婆','外太姥姥'],
'm,m,m':['外曾外祖母','外太姥姥'],
'm,m,m,f':['外曾外曾外祖父','祖太姥爷','祖太公','高王父'],
'm,m,m,m':['外曾外曾外祖母','祖太姥姥','祖太姥娘','祖太婆','高王母'],
// 舅表*
@ -1187,7 +1187,7 @@
'm,m,xs,s,d,d':['从母舅表甥女'],
'm,m,xs,s,d,d,h':['从母舅表甥婿'],
// 再从母
'm,m,xs,d':['姨姨母','从母姨母'],
'm,m,xs,d':['姨姨母','姨姨','从母姨母'],
'm,m,xs,d,h':['姨姨父','从母姨父','从母姨丈'],
'm,m,xs,d,s&o':['再从母兄'],
'm,m,xs,d,s&o,w':['再从母嫂'],
@ -1277,13 +1277,13 @@
// 从母
'm,os':['大姨','大姨妈'],
'm,os,h':['大姨父','大姨丈'],
'm,ls':['小姨','小姨妈','姨仔'],
'm,ls':['小姨','小姨妈'],
'm,ls,h':['小姨父','小姨丈'],
'm,xs':['姨妈','姨母','姨姨','姨娘','阿姨','姨','x姨','x姨妈'],
'm,xs,h':['姨丈','姨父','姨爸','姨爹','姨婿','姨郎','x姨丈','x姨父'],
'm,xs,h,f':['姨姻祖父','姨姻王父','姨姻爷爷','姻爷爷'],
'm,xs,h,m':['姨姻祖母','姨姻王父','姨姻奶奶','姻奶奶'],
'm,xs,h,ob':['姨姻伯父','姻伯父','姻世伯'],
'm,xs,h,ob':['姨姻伯父','姻伯父'],
'm,xs,h,ob,w':['姨姻伯母','姻伯母'],
'm,xs,h,lb':['姨姻叔父','姻叔父'],
'm,xs,h,lb,w':['姨姻叔母','姻叔母'],
@ -1500,7 +1500,7 @@
'h,xb,d,d,h':['叔侄外孙婿'],
'h,os':['大姑子','大姑','大娘姑','大姑姐','夫姐'],
'h,os,h':['大姑夫','姊丈','大姑姐夫'],
'h,ls':['小姑子','小姑','小姑妹','姑仔','夫妹'],
'h,ls':['小姑子','小姑','小姑妹','夫妹'],
'h,ls,h':['小姑夫','小亘子','小姑妹夫'],
'h,xs,s':['姑甥男','姑男','婆家甥男'],
'h,xs,s,w':['姑甥妇','姑妇'],
@ -1637,9 +1637,9 @@
'w,xs,d,d':['内甥外孙女','姨甥外孙女'],
'w,xs,d,d,h':['内甥外孙婿','姨甥外孙婿'],
// 兄弟
'ob':['哥哥','哥','兄','阿哥','大佬','老哥','兄长','胞哥','大哥','x哥'],
'ob,w':['嫂子','嫂','嫂嫂','阿嫂','兄嫂','大嫂','x嫂'],
'lb':['弟弟','弟','细佬','胞弟','老弟','x弟'],
'ob':['哥哥','哥','兄','老哥','兄长','胞哥','大哥','x哥'],
'ob,w':['嫂子','嫂','嫂嫂','兄嫂','大嫂','x嫂'],
'lb':['弟弟','弟','胞弟','老弟','x弟'],
'lb,w':['弟妹','弟媳','弟媳妇','弟妇','x弟妹'],
'xb':['兄弟'],
'xb,w,f':['兄弟眷父'],
@ -1795,7 +1795,7 @@
'xb,d,d,d,s':['侄外曾外曾外孙'],
'xb,d,d,d,d':['侄外曾外曾外孙女'],
// 姐妹
'os':['姐姐','姐','家姐','阿姐','阿姊','胞姐','大姐','x姐'],
'os':['姐姐','姐','阿姊','胞姐','大姐','x姐'],
'os,h':['姐夫','姊夫','姊丈','姊婿','大姐夫','x姐夫'],
'ls':['妹妹','妹','胞妹','老妹','x妹'],
'ls,h':['妹夫','妹丈','妹婿','x妹夫'],
@ -1953,9 +1953,9 @@
'xs,d,d,d,s':['甥外曾外曾外孙'],
'xs,d,d,d,d':['甥外曾外曾外孙女'],
//自家
's':['儿子','男儿','儿','仔','阿仔','仔仔','x儿子'],
's':['儿子','男儿','儿','x儿子'],
's,w':['儿媳','儿媳妇','新妇'],
's,s':['孙子','孙男','孙儿','x孙子','孙'],
's,s':['孙子','孙男','孙儿','x孙子'],
's,s,w':['孙媳妇','孙媳','孙妇'],
's,s,w,f':['孙眷男'],
's,s,w,m':['孙眷女'],
@ -2034,7 +2034,7 @@
's,d,d,s,w':['曾外曾外孙媳妇'],
's,d,d,d':['曾外曾外孙女'],
's,d,d,d,h':['曾外曾外孙女婿'],
'd':['女儿','千金','闺女','女','阿女','女女','掌上明珠','乖囡','囡囡','姑娘','x女儿'],
'd':['女儿','千金','闺女','掌上明珠','乖囡','囡囡','姑娘','x女儿'],
'd,h':['女婿','姑爷','女婿子','女婿儿','儿婿'],
'd,s':['外孙'],
'd,s,w':['外孙媳妇','外孙妇'],
@ -2193,6 +2193,90 @@
'd,h,xs,d,h':['女姻外孙婿','息姻外孙婿'],
};
var _language = {};
_language['cantonese'] = {
'f':['阿爸','老窦'],
'f,f':['阿爷','吖爷'],
'f,f,f':['太公'],
'f,f,m':['太婆'],
'f,m':['阿嫲','阿嬷','吖麻'],
'f,m,f':['太外公'],
'f,m,m':['太外婆'],
'f,ob':['大伯'],
'f,ob,w':['伯娘'],
'f,lb':['阿叔'],
'f,lb,w':['阿婶'],
'0,f,xb,d,s':['堂姨甥'],
'1,f,xb,d,s':['堂外甥'],
'0,f,xb,d,d':['堂姨甥女'],
'1,f,xb,d,d':['堂外甥女'],
'f,os':['姑妈'],
'f,ls':['姑姐','姑仔'],
'f,xs,h':['姑丈'],
'0,f,xs,d,s':['姑表姨甥'],
'1,f,xs,d,s':['姑表外甥'],
'0,f,xs,d,d':['姑表姨甥女'],
'1,f,xs,d,d':['姑表外甥女'],
'm':['阿妈','老母'],
'm,f':['阿公'],
'm,f,f':['外太公'],
'm,f,m':['外太婆'],
'm,m':['阿婆'],
'm,m,f':['外太外公'],
'm,m,m':['外太外婆'],
'm,ob':['舅父'],
'm,lb':['舅仔'],
'm,xb,w':['舅母'],
'0,m,xb,d,s':['舅表姨甥'],
'1,m,xb,d,s':['舅表外甥'],
'0,m,xb,d,d':['舅表姨甥女'],
'1,m,xb,d,d':['舅表外甥女'],
'm,os':['姨妈'],
'm,ls':['姨仔'],
'm,xs,h':['姨丈'],
'0,m,xb,d,s':['姨姨甥'],
'1,m,xb,d,s':['姨外甥'],
'0,m,xb,d,d':['姨姨甥女'],
'1,m,xb,d,d':['姨外甥女'],
'ob':['阿哥','大佬','吖哥'],
'ob,w':['阿嫂'],
'lb':['阿弟','细佬'],
'lb,w':['弟妇'],
'xb,s':['侄'],
'xb,d':['侄女'],
'os':['阿姐','家姐','吖姐'],
'os,w':['姐夫'],
'ls':['阿妹','细妹','吖妹'],
'ls,w':['妹夫'],
'0,xs,s':['姨甥'],
'1,xs,s':['外甥'],
'0,xs,d':['姨甥女'],
'1,xs,d':['外甥女'],
's':['仔','阿仔','仔仔'],
's,w':['新妇'],
's,s':['孙'],
's,s,w':['孙新妇'],
's,s,s':['息仔'],
's,s,d':['息女'],
's,d':['孙女'],
's,d,h':['孙女婿'],
's,d,s':['外息仔'],
's,d,d':['外息女'],
'd':['女','阿女','女女'],
'd,s':['外孙'],
'd,s,w':['外孙新妇'],
'd,s,s':['外息仔'],
'd,s,d':['外息女'],
'd,d':['外孙女'],
'd,d,h':['外孙女婿'],
'd,d,s':['外息仔'],
'd,d,d':['外息女'],
};
_language['northern'] = {
'm,f':['姥爷'],
'm,m':['姥姥'],
};
// 数组去重
var unique = function(arr) {
var result = [], hash = {};
@ -2233,6 +2317,7 @@
'女婿':'婿',
'媳':'妇',
'夫':'婿',
'姪':'侄',
'姊妹姻':'姻',
'女姻':'姻',
'兄弟眷':'眷',
@ -2408,11 +2493,11 @@
}
var g = 0;
arr.forEach(function(r){
if(['f','m'].indexOf(r)>-1){
g++;
}else if(['s','d'].indexOf(r)>-1){
g--;
}
if(['f','m'].indexOf(r)>-1){
g++;
}else if(['s','d'].indexOf(r)>-1){
g--;
}
});
return arr.join(',')+(g?'':age);
}
@ -2476,10 +2561,24 @@
text:'',
target:'',
sex:-1,
type:'default', //为'chain'时,reverse无效
reverse:false
type:'default', // 'chain'表示关系链
reverse:false, // true表示反向
language:'default', // 'cantonese'表示粤语地区
},parameter);
var sex = options.sex;
for(var lang in _language){
if(options.language==lang){
for(var key in _language[lang]){
_data[key] = _language[lang][key].concat(_data[key]||[]);
}
}else{
for(var key in _language[lang]){
if(_data[key]){
_data[key] = _data[key].concat(_language[lang][key]);
}
}
}
}
var from_selectors = getSelectors(options.text);
var to_selectors = options.target?getSelectors(options.target):[''];
// console.log('[selectors]',from_selectors,to_selectors);
@ -2523,7 +2622,7 @@
});
return unique(result);
};
relationship({'text':'弟弟的表哥'});
// 数据量
relationship.dataCount = 0;
for(var i in _data){

File diff suppressed because one or more lines are too long

View File

@ -20,7 +20,7 @@
exp:/^(.+)&l([^#]+)&o/g,
str:'$1$2'
},
{//有大有小,增加不确定性
{//有大有小,增加不确定性
exp:/^(.+)?,o([sb])([^#]+)&l/g,
str:'$1,x$2$3'
},
@ -202,10 +202,10 @@
'[s|d]':['子女','儿女','小孩','孩子','孩儿','宝宝','娃'],
'[s,s|s,d|d,s|d,d]':['孙辈'],
// 本家
'f':['爸爸','父亲','阿爸','老爸','老窦','爸','父','爹','爹爹','爹地','爹啲','老爹','大大','老爷子'],
'f':['爸爸','父亲','老爸','爸','父','爹','爹爹','爹地','爹啲','老爹','大大','老爷子'],
// 爷爷
'f,f':['爷爷','祖父','阿爷','奶爷','阿公','老爷'],
'f,f,f':['曾祖父','曾祖','太爷','太爷爷','太公','祖公','祖奶爷','太老爷'],
'f,f':['爷爷','祖父','奶爷','阿公','老爷'],
'f,f,f':['曾祖父','曾祖','太爷','太爷爷','祖公','祖奶爷','太老爷'],
'f,f,f,f':['高祖父','老太奶爷','老太爷','祖太爷','祖太爷爷','祖太公','高王父'],
'f,f,f,f,f':['天祖父','高祖'],
'f,f,f,f,f,f':['烈祖父','烈祖'],
@ -380,7 +380,7 @@
'f,f,f,xs,d,s&l,w':['姑表姑表叔母'],
'f,f,f,xs,d,d':['姑表姑表姑母'],
'f,f,f,xs,d,d,h':['姑表姑表姑父'],
'f,f,m':['曾祖母','太奶奶','太婆','祖婆','祖奶奶'],
'f,f,m':['曾祖母','太奶奶','祖婆','祖奶奶'],
'f,f,m,f':['高外祖父','老太姥爷','祖太姥爷','祖太公','高王父'],
'f,f,m,m':['高外祖母','老太姥姥','祖太姥姥','祖太姥娘','祖太婆','高王母'],
// 舅表*
@ -437,9 +437,9 @@
'f,f,xb':['堂祖父','从祖祖父','从祖父','x爷爷','x大爷'],
'f,f,xb,w':['堂祖母','从祖祖母','从祖母'],
// 再从父
'f,f,xb,s&o':['堂伯','堂伯父','从父伯父'],
'f,f,xb,s&o':['堂伯','堂伯父','从父伯父','叔伯伯'],
'f,f,xb,s&o,w':['堂伯母','从父伯母'],
'f,f,xb,s&l':['堂叔','堂叔父','从父叔父','叔伯叔父'],
'f,f,xb,s&l':['堂叔','堂叔父','从父叔父','叔伯叔父','叔伯叔'],
'f,f,xb,s&l,w':['堂婶','堂叔母','堂婶母','从父叔母','叔伯叔母'],
'f,f,xb,s,s&o':['从堂兄','再从父兄','再从兄','从祖兄'],
'f,f,xb,s,s&o,w':['从堂嫂','再从父嫂','再从嫂'],
@ -466,7 +466,7 @@
'f,f,xb,s,d,d':['从堂外甥女','再从父外甥女'],
'f,f,xb,s,d,d,h':['从堂甥女婿','再从父甥女婿'],
// 从父姑表
'f,f,xb,d':['堂姑','堂姑妈','堂姑母','从父姑母','叔伯姑母'],
'f,f,xb,d':['堂姑','堂姑妈','堂姑母','从父姑母','叔伯姑母','叔伯姑'],
'f,f,xb,d,h':['堂姑丈','堂姑爸','堂姑父','从父姑父','叔伯姑父'],
'f,f,xb,d,s&o':['堂姑表哥','从父姑表哥'],
'f,f,xb,d,s&o,w':['堂姑表嫂','从父姑表嫂'],
@ -528,8 +528,8 @@
'f,f,xs,d,d,d':['堂姑表表甥女','姑表姑表甥女'],
'f,f,xs,d,d,d,h':['堂姑表表甥婿','姑表姑表甥婿'],
// 奶奶
'f,m':['奶奶','祖母','阿嫲','阿嬷','嫲嫲'],
'f,m,f':['曾外祖父','外太公','太姥爷'],
'f,m':['奶奶','祖母','嫲嫲'],
'f,m,f':['曾外祖父','太姥爷'],
'f,m,f,f':['曾外曾祖父','祖太爷','祖太爷爷','祖太公','高王父'],
'f,m,f,m':['曾外曾祖母','祖太太','祖太奶奶','祖太婆','高王母'],
// 从父*
@ -576,7 +576,7 @@
'f,m,f,xs,d,s&l,w':['姑表姨表叔母'],
'f,m,f,xs,d,d':['姑表姨表姑母'],
'f,m,f,xs,d,d,h':['姑表姨表姑父'],
'f,m,m':['曾外祖母','外太婆','太姥姥'],
'f,m,m':['曾外祖母','太姥姥'],
'f,m,m,f':['曾外曾外祖父','祖太姥爷','祖太公','高王父'],
'f,m,m,m':['曾外曾外祖母','祖太姥姥','祖太姥娘','祖太婆','高王母'],
// 舅表*
@ -708,10 +708,10 @@
'f,m,xs,d,d,d':['从母姑表甥女'],
'f,m,xs,d,d,d,h':['从母姑表甥婿'],
// 从父
'f,ob':['伯父','伯伯','阿伯','大伯','大爹','大爸','x伯'],
'f,ob,w':['伯母','伯妈','伯娘','大娘','大妈','x妈'],
'f,lb':['叔叔','叔父','阿叔','叔爸','叔爹','仲父','小叔','小爹','小爸','幺爸','x叔','叔'],
'f,lb,w':['婶婶','婶母','婶娘','婶爹','婶妈','小婶','小婶娘','婶子','婶儿','家婶','叔母','阿婶','叔妈','叔娘','季母','小娘','小妈','幺婶','x婶','婶'],
'f,ob':['伯父','伯伯','阿伯','大爹','大爸','x伯'],
'f,ob,w':['伯母','伯妈','大娘','大妈','x妈'],
'f,lb':['叔叔','叔父','叔爸','叔爹','仲父','小叔','小爹','小爸','幺爸','x叔','叔'],
'f,lb,w':['婶婶','婶母','婶娘','婶爹','婶妈','小婶','小婶娘','婶子','婶儿','家婶','叔母','叔妈','叔娘','季母','小娘','小妈','幺婶','x婶','婶'],
'f,xb,w,f':['叔眷外祖父','叔眷王父','叔眷毑父','叔眷姥爷','眷姥爷'],
'f,xb,w,m':['叔眷外祖女','叔眷王母','叔眷毑母','叔眷姥姥','眷姥姥'],
'f,xb,w,xb':['叔眷舅父','眷舅父'],
@ -756,13 +756,13 @@
'f,xb,s,w,xs&o,h':['从父兄弟眷姊婿'],
'f,xb,s,w,xs&l':['从父兄弟眷妹'],
'f,xb,s,w,xs&l,h':['从父兄弟眷妹婿'],
'f,xb,s,s':['堂侄','堂侄子','堂侄男','从父侄男','叔伯侄男'],
'f,xb,s,s':['堂侄','堂侄子','堂侄男','从父侄男','叔伯侄男','叔伯侄'],
'f,xb,s,s,w':['堂侄媳妇','堂侄妇','从父侄妇','叔伯侄妇'],
'f,xb,s,s,s':['堂侄孙男','从父侄孙男','堂侄孙','从父侄孙'],
'f,xb,s,s,s,w':['堂侄孙妇','从父侄孙妇'],
'f,xb,s,s,d':['堂侄孙女','从父侄孙女','堂侄孙','从父侄孙'],
'f,xb,s,s,d,h':['堂侄孙婿','从父侄孙婿'],
'f,xb,s,d':['堂侄女','从父侄女','叔伯侄女','堂侄'],
'f,xb,s,d':['堂侄女','从父侄女','叔伯侄女','堂侄','叔伯侄'],
'f,xb,s,d,h':['堂侄女婿','堂侄婿','从父侄婿','叔伯侄婿'],
'f,xb,s,d,s':['堂侄外孙男','从父侄外孙男','堂侄外孙','从父侄外孙'],
'f,xb,s,d,s,w':['堂侄外孙妇','从父侄外孙妇'],
@ -782,13 +782,13 @@
'f,xb,d,h,xs&o,h':['从父姊妹姻姊婿'],
'f,xb,d,h,xs&l':['从父姊妹姻妹'],
'f,xb,d,h,xs&l,h':['从父姊妹姻妹婿'],
'f,xb,d,s':['堂外甥','堂甥男','从父甥男','堂甥'],
'f,xb,d,s':['堂外甥','堂甥男','从父甥男','叔伯甥','堂甥'],
'f,xb,d,s,w':['堂甥媳妇','堂甥妇','从父甥妇'],
'f,xb,d,s,s':['堂甥孙男','从父甥孙男','堂甥孙','从父甥孙'],
'f,xb,d,s,s,w':['堂甥孙妇','从父甥孙妇'],
'f,xb,d,s,d':['堂甥孙女','从父甥孙女','堂甥孙','从父甥孙'],
'f,xb,d,s,d,h':['堂甥孙婿','从父甥孙婿'],
'f,xb,d,d':['堂外甥女','堂甥女','从父甥女','堂甥'],
'f,xb,d,d':['堂外甥女','堂甥女','从父甥女','叔伯甥','堂甥'],
'f,xb,d,d,h':['堂甥女婿','堂甥婿','从父甥婿'],
'f,xb,d,d,s':['堂甥外孙男','从父甥外孙男','堂甥外孙','从父甥外孙'],
'f,xb,d,d,s,w':['堂甥外孙妇','从父甥外孙妇'],
@ -801,7 +801,7 @@
'f,xs,h':['姑丈','姑父','姑爸','姑夫','x姑丈','x姑父'],
'f,xs,h,f':['姑姻祖父','姑姻王父','姑姻爷爷','姻爷爷'],
'f,xs,h,m':['姑姻祖母','姑姻王父','姑姻奶奶','姻奶奶'],
'f,xs,h,ob':['姑姻伯父','姻伯父','姻世伯'],
'f,xs,h,ob':['姑姻伯父','姻伯父'],
'f,xs,h,ob,w':['姑姻伯母','姻伯母'],
'f,xs,h,lb':['姑姻叔父','姻叔父'],
'f,xs,h,lb,w':['姑姻叔母','姻叔母'],
@ -864,9 +864,9 @@
'f,xs,d,d,d':['姑表甥外孙女','表甥外孙女','姑表甥外孙','表甥外孙'],
'f,xs,d,d,d,h':['姑表甥外孙婿','表甥外孙婿'],
// 外家
'm':['妈妈','母亲','老妈','阿妈','老母','老妈子','妈','母','娘','娘亲','妈咪'],
'm':['妈妈','母亲','老妈','老妈子','妈','母','娘','娘亲','妈咪'],
// 外公
'm,f':['外公','姥爷','外祖父','外王父','阿公','毑父'],
'm,f':['外公','外祖父','外王父','客公','外爷','毑父'],
'm,f,f':['外曾祖父','曾外祖父','外太祖父','外曾王父','外太公','外太爷爷','太外祖父'],
'm,f,f,f':['外高祖父','高外祖父','祖太爷','祖太爷爷','祖太公','高王父'],
'm,f,f,m':['外高祖母','高外祖母','祖太太','祖太奶奶','祖太婆','高王母'],
@ -1038,8 +1038,8 @@
'm,f,xs,d,d,d':['姑表姨表甥女'],
'm,f,xs,d,d,d,h':['姑表姨表甥婿'],
// 外婆
'm,m':['外婆','外祖母','外王母','姥姥','阿婆','毑母'],
'm,m,f':['外曾外祖父','外太外公','外太姥爷'],
'm,m':['外婆','外祖母','外王母','婆','毑母'],
'm,m,f':['外曾外祖父','外太姥爷'],
'm,m,f,f':['外曾外曾祖父','祖太爷','祖太爷爷','祖太公','高王父'],
'm,m,f,m':['外曾外曾祖母','祖太太','祖太奶奶','祖太婆','高王母'],
// 从父*
@ -1078,7 +1078,7 @@
'm,m,f,xs,d,s,w':['姑表姨表舅母'],
'm,m,f,xs,d,d':['姑表姨表姨母'],
'm,m,f,xs,d,d,h':['姑表姨表姨父'],
'm,m,m':['外曾外祖母','外太外婆','外太姥姥'],
'm,m,m':['外曾外祖母','外太姥姥'],
'm,m,m,f':['外曾外曾外祖父','祖太姥爷','祖太公','高王父'],
'm,m,m,m':['外曾外曾外祖母','祖太姥姥','祖太姥娘','祖太婆','高王母'],
// 舅表*
@ -1187,7 +1187,7 @@
'm,m,xs,s,d,d':['从母舅表甥女'],
'm,m,xs,s,d,d,h':['从母舅表甥婿'],
// 再从母
'm,m,xs,d':['姨姨母','从母姨母'],
'm,m,xs,d':['姨姨母','姨姨','从母姨母'],
'm,m,xs,d,h':['姨姨父','从母姨父','从母姨丈'],
'm,m,xs,d,s&o':['再从母兄'],
'm,m,xs,d,s&o,w':['再从母嫂'],
@ -1277,13 +1277,13 @@
// 从母
'm,os':['大姨','大姨妈'],
'm,os,h':['大姨父','大姨丈'],
'm,ls':['小姨','小姨妈','姨仔'],
'm,ls':['小姨','小姨妈'],
'm,ls,h':['小姨父','小姨丈'],
'm,xs':['姨妈','姨母','姨姨','姨娘','阿姨','姨','x姨','x姨妈'],
'm,xs,h':['姨丈','姨父','姨爸','姨爹','姨婿','姨郎','x姨丈','x姨父'],
'm,xs,h,f':['姨姻祖父','姨姻王父','姨姻爷爷','姻爷爷'],
'm,xs,h,m':['姨姻祖母','姨姻王父','姨姻奶奶','姻奶奶'],
'm,xs,h,ob':['姨姻伯父','姻伯父','姻世伯'],
'm,xs,h,ob':['姨姻伯父','姻伯父'],
'm,xs,h,ob,w':['姨姻伯母','姻伯母'],
'm,xs,h,lb':['姨姻叔父','姻叔父'],
'm,xs,h,lb,w':['姨姻叔母','姻叔母'],
@ -1500,7 +1500,7 @@
'h,xb,d,d,h':['叔侄外孙婿'],
'h,os':['大姑子','大姑','大娘姑','大姑姐','夫姐'],
'h,os,h':['大姑夫','姊丈','大姑姐夫'],
'h,ls':['小姑子','小姑','小姑妹','姑仔','夫妹'],
'h,ls':['小姑子','小姑','小姑妹','夫妹'],
'h,ls,h':['小姑夫','小亘子','小姑妹夫'],
'h,xs,s':['姑甥男','姑男','婆家甥男'],
'h,xs,s,w':['姑甥妇','姑妇'],
@ -1637,9 +1637,9 @@
'w,xs,d,d':['内甥外孙女','姨甥外孙女'],
'w,xs,d,d,h':['内甥外孙婿','姨甥外孙婿'],
// 兄弟
'ob':['哥哥','哥','兄','阿哥','大佬','老哥','兄长','胞哥','大哥','x哥'],
'ob,w':['嫂子','嫂','嫂嫂','阿嫂','兄嫂','大嫂','x嫂'],
'lb':['弟弟','弟','细佬','胞弟','老弟','x弟'],
'ob':['哥哥','哥','兄','老哥','兄长','胞哥','大哥','x哥'],
'ob,w':['嫂子','嫂','嫂嫂','兄嫂','大嫂','x嫂'],
'lb':['弟弟','弟','胞弟','老弟','x弟'],
'lb,w':['弟妹','弟媳','弟媳妇','弟妇','x弟妹'],
'xb':['兄弟'],
'xb,w,f':['兄弟眷父'],
@ -1795,7 +1795,7 @@
'xb,d,d,d,s':['侄外曾外曾外孙'],
'xb,d,d,d,d':['侄外曾外曾外孙女'],
// 姐妹
'os':['姐姐','姐','家姐','阿姐','阿姊','胞姐','大姐','x姐'],
'os':['姐姐','姐','阿姊','胞姐','大姐','x姐'],
'os,h':['姐夫','姊夫','姊丈','姊婿','大姐夫','x姐夫'],
'ls':['妹妹','妹','胞妹','老妹','x妹'],
'ls,h':['妹夫','妹丈','妹婿','x妹夫'],
@ -1953,9 +1953,9 @@
'xs,d,d,d,s':['甥外曾外曾外孙'],
'xs,d,d,d,d':['甥外曾外曾外孙女'],
//自家
's':['儿子','男儿','儿','仔','阿仔','仔仔','x儿子'],
's':['儿子','男儿','儿','x儿子'],
's,w':['儿媳','儿媳妇','新妇'],
's,s':['孙子','孙男','孙儿','x孙子','孙'],
's,s':['孙子','孙男','孙儿','x孙子'],
's,s,w':['孙媳妇','孙媳','孙妇'],
's,s,w,f':['孙眷男'],
's,s,w,m':['孙眷女'],
@ -2034,7 +2034,7 @@
's,d,d,s,w':['曾外曾外孙媳妇'],
's,d,d,d':['曾外曾外孙女'],
's,d,d,d,h':['曾外曾外孙女婿'],
'd':['女儿','千金','闺女','女','阿女','女女','掌上明珠','乖囡','囡囡','姑娘','x女儿'],
'd':['女儿','千金','闺女','掌上明珠','乖囡','囡囡','姑娘','x女儿'],
'd,h':['女婿','姑爷','女婿子','女婿儿','儿婿'],
'd,s':['外孙'],
'd,s,w':['外孙媳妇','外孙妇'],
@ -2193,6 +2193,90 @@
'd,h,xs,d,h':['女姻外孙婿','息姻外孙婿'],
};
var _language = {};
_language['cantonese'] = {
'f':['阿爸','老窦'],
'f,f':['阿爷','吖爷'],
'f,f,f':['太公'],
'f,f,m':['太婆'],
'f,m':['阿嫲','阿嬷','吖麻'],
'f,m,f':['太外公'],
'f,m,m':['太外婆'],
'f,ob':['大伯'],
'f,ob,w':['伯娘'],
'f,lb':['阿叔'],
'f,lb,w':['阿婶'],
'0,f,xb,d,s':['堂姨甥'],
'1,f,xb,d,s':['堂外甥'],
'0,f,xb,d,d':['堂姨甥女'],
'1,f,xb,d,d':['堂外甥女'],
'f,os':['姑妈'],
'f,ls':['姑姐','姑仔'],
'f,xs,h':['姑丈'],
'0,f,xs,d,s':['姑表姨甥'],
'1,f,xs,d,s':['姑表外甥'],
'0,f,xs,d,d':['姑表姨甥女'],
'1,f,xs,d,d':['姑表外甥女'],
'm':['阿妈','老母'],
'm,f':['阿公'],
'm,f,f':['外太公'],
'm,f,m':['外太婆'],
'm,m':['阿婆'],
'm,m,f':['外太外公'],
'm,m,m':['外太外婆'],
'm,ob':['舅父'],
'm,lb':['舅仔'],
'm,xb,w':['舅母'],
'0,m,xb,d,s':['舅表姨甥'],
'1,m,xb,d,s':['舅表外甥'],
'0,m,xb,d,d':['舅表姨甥女'],
'1,m,xb,d,d':['舅表外甥女'],
'm,os':['姨妈'],
'm,ls':['姨仔'],
'm,xs,h':['姨丈'],
'0,m,xb,d,s':['姨姨甥'],
'1,m,xb,d,s':['姨外甥'],
'0,m,xb,d,d':['姨姨甥女'],
'1,m,xb,d,d':['姨外甥女'],
'ob':['阿哥','大佬','吖哥'],
'ob,w':['阿嫂'],
'lb':['阿弟','细佬'],
'lb,w':['弟妇'],
'xb,s':['侄'],
'xb,d':['侄女'],
'os':['阿姐','家姐','吖姐'],
'os,w':['姐夫'],
'ls':['阿妹','细妹','吖妹'],
'ls,w':['妹夫'],
'0,xs,s':['姨甥'],
'1,xs,s':['外甥'],
'0,xs,d':['姨甥女'],
'1,xs,d':['外甥女'],
's':['仔','阿仔','仔仔'],
's,w':['新妇'],
's,s':['孙'],
's,s,w':['孙新妇'],
's,s,s':['息仔'],
's,s,d':['息女'],
's,d':['孙女'],
's,d,h':['孙女婿'],
's,d,s':['外息仔'],
's,d,d':['外息女'],
'd':['女','阿女','女女'],
'd,s':['外孙'],
'd,s,w':['外孙新妇'],
'd,s,s':['外息仔'],
'd,s,d':['外息女'],
'd,d':['外孙女'],
'd,d,h':['外孙女婿'],
'd,d,s':['外息仔'],
'd,d,d':['外息女'],
};
_language['northern'] = {
'm,f':['姥爷'],
'm,m':['姥姥'],
};
// 数组去重
var unique = function(arr) {
var result = [], hash = {};
@ -2233,6 +2317,7 @@
'女婿':'婿',
'媳':'妇',
'夫':'婿',
'姪':'侄',
'姊妹姻':'姻',
'女姻':'姻',
'兄弟眷':'眷',
@ -2408,11 +2493,11 @@
}
var g = 0;
arr.forEach(function(r){
if(['f','m'].indexOf(r)>-1){
g++;
}else if(['s','d'].indexOf(r)>-1){
g--;
}
if(['f','m'].indexOf(r)>-1){
g++;
}else if(['s','d'].indexOf(r)>-1){
g--;
}
});
return arr.join(',')+(g?'':age);
}
@ -2476,10 +2561,24 @@
text:'',
target:'',
sex:-1,
type:'default', //为'chain'时,reverse无效
reverse:false
type:'default', // 'chain'表示关系链
reverse:false, // true表示反向
language:'default', // 'cantonese'表示粤语地区
},parameter);
var sex = options.sex;
for(var lang in _language){
if(options.language==lang){
for(var key in _language[lang]){
_data[key] = _language[lang][key].concat(_data[key]||[]);
}
}else{
for(var key in _language[lang]){
if(_data[key]){
_data[key] = _data[key].concat(_language[lang][key]);
}
}
}
}
var from_selectors = getSelectors(options.text);
var to_selectors = options.target?getSelectors(options.target):[''];
// console.log('[selectors]',from_selectors,to_selectors);
@ -2523,7 +2622,7 @@
});
return unique(result);
};
relationship({'text':'弟弟的表哥'});
// 数据量
relationship.dataCount = 0;
for(var i in _data){