Merge branch 'master' of github.com:mumuy/relationship
This commit is contained in:
commit
0a08c0f3ec
4
dist/relationship.min.js
vendored
4
dist/relationship.min.js
vendored
File diff suppressed because one or more lines are too long
@ -137,7 +137,11 @@ relationship.setMode('cantonese',{
|
|||||||
};
|
};
|
||||||
var bindChange = function(){
|
var bindChange = function(){
|
||||||
var value = $input.value.trim();
|
var value = $input.value.trim();
|
||||||
var result = relationship({text:value,type:'chain'});
|
var sex = $sex[0].checked?1:0;
|
||||||
|
var mode = $mode[0].checked?$mode[0].value:$mode[1].value;
|
||||||
|
var reverse = !$reverse[0].checked;
|
||||||
|
if(value){
|
||||||
|
var result = relationship({text:value,sex:sex,reverse:reverse,mode:mode});
|
||||||
if(result.length){
|
if(result.length){
|
||||||
var name = result[0].split('的').pop();
|
var name = result[0].split('的').pop();
|
||||||
if(!name){
|
if(!name){
|
||||||
@ -146,6 +150,9 @@ relationship.setMode('cantonese',{
|
|||||||
toggleSex('爸爸,老公,儿子,哥哥,弟弟,兄弟'.indexOf(name)>-1);
|
toggleSex('爸爸,老公,儿子,哥哥,弟弟,兄弟'.indexOf(name)>-1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}else{
|
||||||
|
$result.value = '';
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
for(var i=0;i<$small_btns.length;i++){
|
for(var i=0;i<$small_btns.length;i++){
|
||||||
|
@ -173,11 +173,11 @@
|
|||||||
exp:/,w,h|,h,w/g,
|
exp:/,w,h|,h,w/g,
|
||||||
str:''
|
str:''
|
||||||
},
|
},
|
||||||
{//并列关系处理1
|
{//并列关系处理1 X[A|B|C]Y = XAY#X[B|C]Y
|
||||||
exp:/(.+)?\[([^\|]+?)\|([^\[\]]+?\|[^\[\]]+?)?\](.+)?/g,
|
exp:/(.+)?\[([^\|]+?)\|([^\[\]]*\|[^\[\]]*)\](.+)?/g,
|
||||||
str:'$1$2$4#$1[$3]$4'
|
str:'$1$2$4#$1[$3]$4'
|
||||||
},
|
},
|
||||||
{//并列关系处理2
|
{//并列关系处理2 X[A|B]Y = XAY#XBY
|
||||||
exp:/(.+)?\[([^\[\]\|]+?)\|([^\[\]\|]+?)?\](.+)?/g,
|
exp:/(.+)?\[([^\[\]\|]+?)\|([^\[\]\|]+?)?\](.+)?/g,
|
||||||
str:'$1$2$4#$1$3$4'
|
str:'$1$2$4#$1$3$4'
|
||||||
}
|
}
|
||||||
@ -316,10 +316,6 @@
|
|||||||
'f,f,f,xb,s&o,w':['堂伯祖母','从父伯祖母','叔伯伯祖母','族伯祖母','族祖母'],
|
'f,f,f,xb,s&o,w':['堂伯祖母','从父伯祖母','叔伯伯祖母','族伯祖母','族祖母'],
|
||||||
'f,f,f,xb,s&l':['堂叔祖父','从父叔祖父','叔伯叔祖父','族叔祖父','族祖父'],
|
'f,f,f,xb,s&l':['堂叔祖父','从父叔祖父','叔伯叔祖父','族叔祖父','族祖父'],
|
||||||
'f,f,f,xb,s&l,w':['堂叔祖母','从父叔祖母','叔伯叔祖母','族叔祖母','族祖母'],
|
'f,f,f,xb,s&l,w':['堂叔祖母','从父叔祖母','叔伯叔祖母','族叔祖母','族祖母'],
|
||||||
'f,f,f,xb,s&o':['堂伯祖父','从父伯祖父'],
|
|
||||||
'f,f,f,xb,s&o,w':['堂伯祖母','从父伯祖母'],
|
|
||||||
'f,f,f,xb,s&l':['堂叔祖父','从父叔祖父'],
|
|
||||||
'f,f,f,xb,s&l,w':['堂叔祖母','从父叔祖母'],
|
|
||||||
'f,f,f,xb,s,s&o':['从堂伯父','再从父伯父','叔伯叔伯伯父','再从伯父','族伯父','族父'],
|
'f,f,f,xb,s,s&o':['从堂伯父','再从父伯父','叔伯叔伯伯父','再从伯父','族伯父','族父'],
|
||||||
'f,f,f,xb,s,s&o,w':['从堂伯母','再从父伯母','叔伯叔伯伯母','再从伯母','族伯母','族母'],
|
'f,f,f,xb,s,s&o,w':['从堂伯母','再从父伯母','叔伯叔伯伯母','再从伯母','族伯母','族母'],
|
||||||
'f,f,f,xb,s,s&l':['从堂叔父','再从父叔父','叔伯叔伯叔父','再从叔父','族叔父','族父'],
|
'f,f,f,xb,s,s&l':['从堂叔父','再从父叔父','叔伯叔伯叔父','再从叔父','族叔父','族父'],
|
||||||
@ -1240,9 +1236,9 @@
|
|||||||
'm,xb,w,xs,d&o,h':['舅眷姨表姐夫'],
|
'm,xb,w,xs,d&o,h':['舅眷姨表姐夫'],
|
||||||
'm,xb,w,xs,d&l':['舅眷姨表妹'],
|
'm,xb,w,xs,d&l':['舅眷姨表妹'],
|
||||||
'm,xb,w,xs,d&l,h':['舅眷姨表妹夫'],
|
'm,xb,w,xs,d&l,h':['舅眷姨表妹夫'],
|
||||||
'm,xb,s&o':['舅表哥','表哥','表兄'],
|
'm,xb,s&o':['舅表哥','表哥','老表'],
|
||||||
'm,xb,s&o,w':['舅表嫂','舅表兄妇','表嫂'],
|
'm,xb,s&o,w':['舅表嫂','舅表兄妇','表嫂'],
|
||||||
'm,xb,s&l':['舅表弟','表弟'],
|
'm,xb,s&l':['舅表弟','表弟','老表'],
|
||||||
'm,xb,s&l,w':['舅表弟媳','舅表弟妇','表弟媳','表弟妹'],
|
'm,xb,s&l,w':['舅表弟媳','舅表弟妇','表弟媳','表弟妹'],
|
||||||
'm,xb,s,s':['舅表侄男','表侄男','舅表侄','表侄'],
|
'm,xb,s,s':['舅表侄男','表侄男','舅表侄','表侄'],
|
||||||
'm,xb,s,s,w':['舅表侄妇','表侄妇'],
|
'm,xb,s,s,w':['舅表侄妇','表侄妇'],
|
||||||
@ -1256,9 +1252,9 @@
|
|||||||
'm,xb,s,d,s,w':['舅表侄外孙妇','表侄外孙妇'],
|
'm,xb,s,d,s,w':['舅表侄外孙妇','表侄外孙妇'],
|
||||||
'm,xb,s,d,d':['舅表侄外孙女','表侄外孙女','舅表侄外孙','表侄外孙'],
|
'm,xb,s,d,d':['舅表侄外孙女','表侄外孙女','舅表侄外孙','表侄外孙'],
|
||||||
'm,xb,s,d,d,h':['舅表侄外孙婿','表侄外孙婿'],
|
'm,xb,s,d,d,h':['舅表侄外孙婿','表侄外孙婿'],
|
||||||
'm,xb,d&o':['舅表姐','表姐'],
|
'm,xb,d&o':['舅表姐','表姐','老表'],
|
||||||
'm,xb,d&o,h':['舅表姐夫','表姐夫','表姐丈'],
|
'm,xb,d&o,h':['舅表姐夫','表姐夫','表姐丈'],
|
||||||
'm,xb,d&l':['舅表妹','表妹'],
|
'm,xb,d&l':['舅表妹','表妹','老表'],
|
||||||
'm,xb,d&l,h':['舅表妹夫','舅表妹婿','表妹夫'],
|
'm,xb,d&l,h':['舅表妹夫','舅表妹婿','表妹夫'],
|
||||||
'm,xb,d,s':['舅表甥男','舅表甥男','表甥男','表甥'],
|
'm,xb,d,s':['舅表甥男','舅表甥男','表甥男','表甥'],
|
||||||
'm,xb,d,s,w':['舅表甥妇','表甥妇'],
|
'm,xb,d,s,w':['舅表甥妇','表甥妇'],
|
||||||
@ -1740,14 +1736,32 @@
|
|||||||
'xb,s,w':['侄媳妇','侄妇'],
|
'xb,s,w':['侄媳妇','侄妇'],
|
||||||
'xb,s,w,f&o':['侄眷兄'],
|
'xb,s,w,f&o':['侄眷兄'],
|
||||||
'xb,s,w,f&l':['侄眷弟'],
|
'xb,s,w,f&l':['侄眷弟'],
|
||||||
|
'xb,s,w,f,f':['侄眷父'],
|
||||||
|
'xb,s,w,f,m':['侄眷母'],
|
||||||
'xb,s,w,m&o':['侄眷姊'],
|
'xb,s,w,m&o':['侄眷姊'],
|
||||||
'xb,s,w,m&l':['侄眷妹'],
|
'xb,s,w,m&l':['侄眷妹'],
|
||||||
|
'xb,s,w,m,f':['侄眷父'],
|
||||||
|
'xb,s,w,m,m':['侄眷母'],
|
||||||
'xb,s,w,xb':['侄眷男'],
|
'xb,s,w,xb':['侄眷男'],
|
||||||
'xb,s,w,xb,w':['侄眷妇'],
|
'xb,s,w,xb,w':['侄眷妇'],
|
||||||
'xb,s,w,xs':['侄眷女'],
|
'xb,s,w,xs':['侄眷女'],
|
||||||
'xb,s,w,xs,h':['侄眷婿'],
|
'xb,s,w,xs,h':['侄眷婿'],
|
||||||
'xb,s,s':['侄孙男','侄孙子','从孙男'],
|
'xb,s,s':['侄孙男','侄孙子','从孙男'],
|
||||||
'xb,s,s,w':['侄孙妇','从孙妇'],
|
'xb,s,s,w':['侄孙妇','从孙妇'],
|
||||||
|
'xb,s,s,w,f':['侄孙眷男'],
|
||||||
|
'xb,s,s,w,f,f&o':['侄孙眷兄'],
|
||||||
|
'xb,s,s,w,f,f&l':['侄孙眷弟'],
|
||||||
|
'xb,s,s,w,f,m&o':['侄孙眷姊'],
|
||||||
|
'xb,s,s,w,f,m&l':['侄孙眷妹'],
|
||||||
|
'xb,s,s,w,m':['侄孙眷女'],
|
||||||
|
'xb,s,s,w,m,f&o':['侄孙眷兄'],
|
||||||
|
'xb,s,s,w,m,f&l':['侄孙眷弟'],
|
||||||
|
'xb,s,s,w,m,m&o':['侄孙眷姊'],
|
||||||
|
'xb,s,s,w,m,m&l':['侄孙眷妹'],
|
||||||
|
'xb,s,s,w,xb':['侄孙眷孙男'],
|
||||||
|
'xb,s,s,w,xb,w':['侄孙眷孙妇'],
|
||||||
|
'xb,s,s,w,xs':['侄孙眷孙女'],
|
||||||
|
'xb,s,s,w,xs,h':['侄孙眷孙婿'],
|
||||||
'xb,s,s,s':['侄曾孙'],
|
'xb,s,s,s':['侄曾孙'],
|
||||||
'xb,s,s,s,w':['侄曾孙妇'],
|
'xb,s,s,s,w':['侄曾孙妇'],
|
||||||
'xb,s,s,s,s':['侄玄孙'],
|
'xb,s,s,s,s':['侄玄孙'],
|
||||||
@ -1758,6 +1772,20 @@
|
|||||||
'xb,s,s,d,d':['侄玄外孙女'],
|
'xb,s,s,d,d':['侄玄外孙女'],
|
||||||
'xb,s,d':['侄孙女','从孙女'],
|
'xb,s,d':['侄孙女','从孙女'],
|
||||||
'xb,s,d,h':['侄孙婿','从孙婿'],
|
'xb,s,d,h':['侄孙婿','从孙婿'],
|
||||||
|
'xb,s,d,h,f':['侄孙姻男'],
|
||||||
|
'xb,s,d,h,f,f&o':['侄孙姻兄'],
|
||||||
|
'xb,s,d,h,f,f&l':['侄孙姻弟'],
|
||||||
|
'xb,s,d,h,f,m&o':['侄孙姻姊'],
|
||||||
|
'xb,s,d,h,f,m&l':['侄孙姻妹'],
|
||||||
|
'xb,s,d,h,m':['侄孙姻女'],
|
||||||
|
'xb,s,d,h,m,f&o':['侄孙姻兄'],
|
||||||
|
'xb,s,d,h,m,f&l':['侄孙姻弟'],
|
||||||
|
'xb,s,d,h,m,m&o':['侄孙姻姊'],
|
||||||
|
'xb,s,d,h,m,m&l':['侄孙姻妹'],
|
||||||
|
'xb,s,d,h,xb':['侄孙姻孙男'],
|
||||||
|
'xb,s,d,h,xb,w':['侄孙姻孙妇'],
|
||||||
|
'xb,s,d,h,xs':['侄孙姻孙女'],
|
||||||
|
'xb,s,d,h,xs,h':['侄孙姻孙婿'],
|
||||||
'xb,s,d,s':['侄曾外孙'],
|
'xb,s,d,s':['侄曾外孙'],
|
||||||
'xb,s,d,s,w':['侄曾外孙妇'],
|
'xb,s,d,s,w':['侄曾外孙妇'],
|
||||||
'xb,s,d,s,s':['侄曾外曾孙'],
|
'xb,s,d,s,s':['侄曾外曾孙'],
|
||||||
@ -1770,14 +1798,32 @@
|
|||||||
'xb,d,h':['侄女婿','侄婿'],
|
'xb,d,h':['侄女婿','侄婿'],
|
||||||
'xb,d,h,f&o':['侄姻兄'],
|
'xb,d,h,f&o':['侄姻兄'],
|
||||||
'xb,d,h,f&l':['侄姻弟'],
|
'xb,d,h,f&l':['侄姻弟'],
|
||||||
|
'xb,d,h,f,f':['侄姻父'],
|
||||||
|
'xb,d,h,f,m':['侄姻母'],
|
||||||
'xb,d,h,m&o':['侄姻姊'],
|
'xb,d,h,m&o':['侄姻姊'],
|
||||||
'xb,d,h,m&l':['侄姻妹'],
|
'xb,d,h,m&l':['侄姻妹'],
|
||||||
|
'xb,d,h,m,f':['侄姻父'],
|
||||||
|
'xb,d,h,m,m':['侄姻母'],
|
||||||
'xb,d,h,xb':['侄姻男'],
|
'xb,d,h,xb':['侄姻男'],
|
||||||
'xb,d,h,xb,w':['侄姻妇'],
|
'xb,d,h,xb,w':['侄姻妇'],
|
||||||
'xb,d,h,xs':['侄姻女'],
|
'xb,d,h,xs':['侄姻女'],
|
||||||
'xb,d,h,xs,h':['侄姻婿'],
|
'xb,d,h,xs,h':['侄姻婿'],
|
||||||
'xb,d,s':['侄外孙','外侄孙'],
|
'xb,d,s':['侄外孙','外侄孙'],
|
||||||
'xb,d,s,w':['侄外孙妇','外侄孙妇'],
|
'xb,d,s,w':['侄外孙妇','外侄孙妇'],
|
||||||
|
'xb,d,s,w,f':['侄外孙眷男'],
|
||||||
|
'xb,d,s,w,f,f&o':['侄外孙眷兄'],
|
||||||
|
'xb,d,s,w,f,f&l':['侄外孙眷弟'],
|
||||||
|
'xb,d,s,w,f,m&o':['侄外孙眷姊'],
|
||||||
|
'xb,d,s,w,f,m&l':['侄外孙眷妹'],
|
||||||
|
'xb,d,s,w,m':['侄外孙眷女'],
|
||||||
|
'xb,d,s,w,m,f&o':['侄外孙眷兄'],
|
||||||
|
'xb,d,s,w,m,f&l':['侄外孙眷弟'],
|
||||||
|
'xb,d,s,w,m,m&o':['侄外孙眷姊'],
|
||||||
|
'xb,d,s,w,m,m&l':['侄外孙眷妹'],
|
||||||
|
'xb,d,s,w,xb':['侄外孙眷孙男'],
|
||||||
|
'xb,d,s,w,xb,w':['侄外孙眷孙妇'],
|
||||||
|
'xb,d,s,w,xs':['侄外孙眷孙女'],
|
||||||
|
'xb,d,s,w,xs,h':['侄外孙眷孙婿'],
|
||||||
'xb,d,s,s':['侄外曾孙'],
|
'xb,d,s,s':['侄外曾孙'],
|
||||||
'xb,d,s,s,w':['侄外曾孙妇'],
|
'xb,d,s,s,w':['侄外曾孙妇'],
|
||||||
'xb,d,s,s,s':['侄外玄孙'],
|
'xb,d,s,s,s':['侄外玄孙'],
|
||||||
@ -1788,6 +1834,20 @@
|
|||||||
'xb,d,s,d,d':['侄外玄外孙女'],
|
'xb,d,s,d,d':['侄外玄外孙女'],
|
||||||
'xb,d,d':['侄外孙女','外侄孙女'],
|
'xb,d,d':['侄外孙女','外侄孙女'],
|
||||||
'xb,d,d,h':['侄外孙婿','外侄孙婿'],
|
'xb,d,d,h':['侄外孙婿','外侄孙婿'],
|
||||||
|
'xb,d,d,h,f':['侄外孙姻男'],
|
||||||
|
'xb,d,d,h,f,f&o':['侄外孙姻兄'],
|
||||||
|
'xb,d,d,h,f,f&l':['侄外孙姻弟'],
|
||||||
|
'xb,d,d,h,f,m&o':['侄外孙姻姊'],
|
||||||
|
'xb,d,d,h,f,m&l':['侄外孙姻妹'],
|
||||||
|
'xb,d,d,h,m':['侄外孙姻女'],
|
||||||
|
'xb,d,d,h,m,f&o':['侄外孙姻兄'],
|
||||||
|
'xb,d,d,h,m,f&l':['侄外孙姻弟'],
|
||||||
|
'xb,d,d,h,m,m&o':['侄外孙姻姊'],
|
||||||
|
'xb,d,d,h,m,m&l':['侄外孙姻妹'],
|
||||||
|
'xb,d,d,h,xb':['侄外孙姻孙男'],
|
||||||
|
'xb,d,d,h,xb,w':['侄外孙姻孙妇'],
|
||||||
|
'xb,d,d,h,xs':['侄外孙姻孙女'],
|
||||||
|
'xb,d,d,h,xs,h':['侄外孙姻孙婿'],
|
||||||
'xb,d,d,s':['侄外曾外孙'],
|
'xb,d,d,s':['侄外曾外孙'],
|
||||||
'xb,d,d,s,w':['侄外曾外孙妇'],
|
'xb,d,d,s,w':['侄外曾外孙妇'],
|
||||||
'xb,d,d,s,s':['侄外曾外曾孙'],
|
'xb,d,d,s,s':['侄外曾外曾孙'],
|
||||||
@ -1898,14 +1958,32 @@
|
|||||||
'xs,s,w':['外甥媳妇','甥媳妇','甥妇'],
|
'xs,s,w':['外甥媳妇','甥媳妇','甥妇'],
|
||||||
'xs,s,w,f&o':['甥眷兄'],
|
'xs,s,w,f&o':['甥眷兄'],
|
||||||
'xs,s,w,f&l':['甥眷弟'],
|
'xs,s,w,f&l':['甥眷弟'],
|
||||||
|
'xs,s,w,f,f':['甥眷父'],
|
||||||
|
'xs,s,w,f,m':['甥眷母'],
|
||||||
'xs,s,w,m&o':['甥眷姊'],
|
'xs,s,w,m&o':['甥眷姊'],
|
||||||
'xs,s,w,m&l':['甥眷妹'],
|
'xs,s,w,m&l':['甥眷妹'],
|
||||||
|
'xs,s,w,m,f':['甥眷父'],
|
||||||
|
'xs,s,w,m,m':['甥眷母'],
|
||||||
'xs,s,w,xb':['甥眷男'],
|
'xs,s,w,xb':['甥眷男'],
|
||||||
'xs,s,w,xb,w':['甥眷妇'],
|
'xs,s,w,xb,w':['甥眷妇'],
|
||||||
'xs,s,w,xs':['甥眷女'],
|
'xs,s,w,xs':['甥眷女'],
|
||||||
'xs,s,w,xs,h':['甥眷婿'],
|
'xs,s,w,xs,h':['甥眷婿'],
|
||||||
'xs,s,s':['甥孙','甥孙男','从孙男'],
|
'xs,s,s':['甥孙','甥孙男','从孙男'],
|
||||||
'xs,s,s,w':['甥孙妇','从孙妇'],
|
'xs,s,s,w':['甥孙妇','从孙妇'],
|
||||||
|
'xs,s,s,w,f':['甥孙眷男'],
|
||||||
|
'xs,s,s,w,f,f&o':['甥孙眷兄'],
|
||||||
|
'xs,s,s,w,f,f&l':['甥孙眷弟'],
|
||||||
|
'xs,s,s,w,f,m&o':['甥孙眷姊'],
|
||||||
|
'xs,s,s,w,f,m&l':['甥孙眷妹'],
|
||||||
|
'xs,s,s,w,m':['甥孙眷女'],
|
||||||
|
'xs,s,s,w,m,f&o':['甥孙眷兄'],
|
||||||
|
'xs,s,s,w,m,f&l':['甥孙眷弟'],
|
||||||
|
'xs,s,s,w,m,m&o':['甥孙眷姊'],
|
||||||
|
'xs,s,s,w,m,m&l':['甥孙眷妹'],
|
||||||
|
'xs,s,s,w,xb':['甥孙眷孙男'],
|
||||||
|
'xs,s,s,w,xb,w':['甥孙眷孙妇'],
|
||||||
|
'xs,s,s,w,xs':['甥孙眷孙女'],
|
||||||
|
'xs,s,s,w,xs,h':['甥孙眷孙婿'],
|
||||||
'xs,s,s,s':['甥曾孙'],
|
'xs,s,s,s':['甥曾孙'],
|
||||||
'xs,s,s,s,w':['甥曾孙妇'],
|
'xs,s,s,s,w':['甥曾孙妇'],
|
||||||
'xs,s,s,s,s':['甥玄孙'],
|
'xs,s,s,s,s':['甥玄孙'],
|
||||||
@ -1916,6 +1994,20 @@
|
|||||||
'xs,s,s,d,d':['甥玄外孙女'],
|
'xs,s,s,d,d':['甥玄外孙女'],
|
||||||
'xs,s,d':['甥孙女','从孙女'],
|
'xs,s,d':['甥孙女','从孙女'],
|
||||||
'xs,s,d,h':['甥孙婿','从孙婿'],
|
'xs,s,d,h':['甥孙婿','从孙婿'],
|
||||||
|
'xs,s,d,h,f':['甥孙姻男'],
|
||||||
|
'xs,s,d,h,f,f&o':['甥孙姻兄'],
|
||||||
|
'xs,s,d,h,f,f&l':['甥孙姻弟'],
|
||||||
|
'xs,s,d,h,f,m&o':['甥孙姻姊'],
|
||||||
|
'xs,s,d,h,f,m&l':['甥孙姻妹'],
|
||||||
|
'xs,s,d,h,m':['甥孙姻女'],
|
||||||
|
'xs,s,d,h,m,f&o':['甥孙姻兄'],
|
||||||
|
'xs,s,d,h,m,f&l':['甥孙姻弟'],
|
||||||
|
'xs,s,d,h,m,m&o':['甥孙姻姊'],
|
||||||
|
'xs,s,d,h,m,m&l':['甥孙姻妹'],
|
||||||
|
'xs,s,d,h,xb':['甥孙姻孙男'],
|
||||||
|
'xs,s,d,h,xb,w':['甥孙姻孙妇'],
|
||||||
|
'xs,s,d,h,xs':['甥孙姻孙女'],
|
||||||
|
'xs,s,d,h,xs,h':['甥孙姻孙婿'],
|
||||||
'xs,s,d,s':['甥曾外孙'],
|
'xs,s,d,s':['甥曾外孙'],
|
||||||
'xs,s,d,s,w':['甥曾外孙妇'],
|
'xs,s,d,s,w':['甥曾外孙妇'],
|
||||||
'xs,s,d,s,s':['甥曾外曾孙'],
|
'xs,s,d,s,s':['甥曾外曾孙'],
|
||||||
@ -1928,14 +2020,32 @@
|
|||||||
'xs,d,h':['外甥女婿','甥女婿','甥婿'],
|
'xs,d,h':['外甥女婿','甥女婿','甥婿'],
|
||||||
'xs,d,h,f&o':['甥姻兄'],
|
'xs,d,h,f&o':['甥姻兄'],
|
||||||
'xs,d,h,f&l':['甥姻弟'],
|
'xs,d,h,f&l':['甥姻弟'],
|
||||||
|
'xs,d,h,f,f':['甥姻父'],
|
||||||
|
'xs,d,h,f,m':['甥姻母'],
|
||||||
'xs,d,h,m&o':['甥姻姊'],
|
'xs,d,h,m&o':['甥姻姊'],
|
||||||
'xs,d,h,m&l':['甥姻妹'],
|
'xs,d,h,m&l':['甥姻妹'],
|
||||||
|
'xs,d,h,m,f':['甥姻父'],
|
||||||
|
'xs,d,h,m,m':['甥姻母'],
|
||||||
'xs,d,h,xb':['甥姻男'],
|
'xs,d,h,xb':['甥姻男'],
|
||||||
'xs,d,h,xb,w':['甥姻妇'],
|
'xs,d,h,xb,w':['甥姻妇'],
|
||||||
'xs,d,h,xs':['甥姻女'],
|
'xs,d,h,xs':['甥姻女'],
|
||||||
'xs,d,h,xs,h':['甥姻婿'],
|
'xs,d,h,xs,h':['甥姻婿'],
|
||||||
'xs,d,s':['甥外孙'],
|
'xs,d,s':['甥外孙'],
|
||||||
'xs,d,s,w':['甥外孙妇'],
|
'xs,d,s,w':['甥外孙妇'],
|
||||||
|
'xs,d,s,w,f':['甥外孙眷男'],
|
||||||
|
'xs,d,s,w,f,f&o':['甥外孙眷兄'],
|
||||||
|
'xs,d,s,w,f,f&l':['甥外孙眷弟'],
|
||||||
|
'xs,d,s,w,f,m&o':['甥外孙眷姊'],
|
||||||
|
'xs,d,s,w,f,m&l':['甥外孙眷妹'],
|
||||||
|
'xs,d,s,w,m':['甥外孙眷女'],
|
||||||
|
'xs,d,s,w,m,f&o':['甥外孙眷兄'],
|
||||||
|
'xs,d,s,w,m,f&l':['甥外孙眷弟'],
|
||||||
|
'xs,d,s,w,m,m&o':['甥外孙眷姊'],
|
||||||
|
'xs,d,s,w,m,m&l':['甥外孙眷妹'],
|
||||||
|
'xs,d,s,w,xb':['甥外孙眷孙男'],
|
||||||
|
'xs,d,s,w,xb,w':['甥外孙眷孙妇'],
|
||||||
|
'xs,d,s,w,xs':['甥外孙眷孙女'],
|
||||||
|
'xs,d,s,w,xs,h':['甥外孙眷孙婿'],
|
||||||
'xs,d,s,s':['甥外曾孙'],
|
'xs,d,s,s':['甥外曾孙'],
|
||||||
'xs,d,s,s,w':['甥外曾孙妇'],
|
'xs,d,s,s,w':['甥外曾孙妇'],
|
||||||
'xs,d,s,s,s':['甥外玄孙'],
|
'xs,d,s,s,s':['甥外玄孙'],
|
||||||
@ -1946,6 +2056,19 @@
|
|||||||
'xs,d,s,d,d':['甥外玄外孙女'],
|
'xs,d,s,d,d':['甥外玄外孙女'],
|
||||||
'xs,d,d':['甥外孙女'],
|
'xs,d,d':['甥外孙女'],
|
||||||
'xs,d,d,h':['甥外孙婿'],
|
'xs,d,d,h':['甥外孙婿'],
|
||||||
|
'xs,d,d,h,f,f&o':['甥外孙姻兄'],
|
||||||
|
'xs,d,d,h,f,f&l':['甥外孙姻弟'],
|
||||||
|
'xs,d,d,h,f,m&o':['甥外孙姻姊'],
|
||||||
|
'xs,d,d,h,f,m&l':['甥外孙姻妹'],
|
||||||
|
'xs,d,d,h,m':['甥外孙姻女'],
|
||||||
|
'xs,d,d,h,m,f&o':['甥外孙姻兄'],
|
||||||
|
'xs,d,d,h,m,f&l':['甥外孙姻弟'],
|
||||||
|
'xs,d,d,h,m,m&o':['甥外孙姻姊'],
|
||||||
|
'xs,d,d,h,m,m&l':['甥外孙姻妹'],
|
||||||
|
'xs,d,d,h,xb':['甥外孙姻孙男'],
|
||||||
|
'xs,d,d,h,xb,w':['甥外孙姻孙妇'],
|
||||||
|
'xs,d,d,h,xs':['甥外孙姻孙女'],
|
||||||
|
'xs,d,d,h,xs,h':['甥外孙姻孙婿'],
|
||||||
'xs,d,d,s':['甥外曾外孙'],
|
'xs,d,d,s':['甥外曾外孙'],
|
||||||
'xs,d,d,s,w':['甥外曾外孙妇'],
|
'xs,d,d,s,w':['甥外曾外孙妇'],
|
||||||
'xs,d,d,s,s':['甥外曾外曾孙'],
|
'xs,d,d,s,s':['甥外曾外曾孙'],
|
||||||
@ -2029,7 +2152,7 @@
|
|||||||
's,d,s,s':['曾外曾孙'],
|
's,d,s,s':['曾外曾孙'],
|
||||||
's,d,s,s,w':['曾外曾孙媳妇'],
|
's,d,s,s,w':['曾外曾孙媳妇'],
|
||||||
's,d,s,d':['曾外曾孙女'],
|
's,d,s,d':['曾外曾孙女'],
|
||||||
's,d,s,d,d':['曾外曾孙女婿'],
|
's,d,s,d,h':['曾外曾孙女婿'],
|
||||||
's,d,d':['曾外孙女'],
|
's,d,d':['曾外孙女'],
|
||||||
's,d,d,h':['曾外孙女婿'],
|
's,d,d,h':['曾外孙女婿'],
|
||||||
's,d,d,s':['曾外曾外孙'],
|
's,d,d,s':['曾外曾外孙'],
|
||||||
@ -2081,11 +2204,14 @@
|
|||||||
's,w,f,f,xb,s&o,w':['男眷家兄妇'],
|
's,w,f,f,xb,s&o,w':['男眷家兄妇'],
|
||||||
's,w,f,f,xb,s&l':['男眷家弟'],
|
's,w,f,f,xb,s&l':['男眷家弟'],
|
||||||
's,w,f,f,xb,s&l,w':['男眷家弟妇'],
|
's,w,f,f,xb,s&l,w':['男眷家弟妇'],
|
||||||
's,w,f,f,xb,s,s':['男眷侄'],
|
's,w,f,f,xb,s,s':['男眷侄男'],
|
||||||
|
's,w,f,f,xb,s,d':['男眷侄女'],
|
||||||
's,w,f,f,xb,d&o':['男眷家姊'],
|
's,w,f,f,xb,d&o':['男眷家姊'],
|
||||||
's,w,f,f,xb,d&o,w':['男眷家姊婿'],
|
's,w,f,f,xb,d&o,w':['男眷家姊婿'],
|
||||||
's,w,f,f,xb,d&l':['男眷家妹'],
|
's,w,f,f,xb,d&l':['男眷家妹'],
|
||||||
's,w,f,f,xb,d&l,w':['男眷家妹婿'],
|
's,w,f,f,xb,d&l,w':['男眷家妹婿'],
|
||||||
|
's,w,f,f,xb,d,s':['男眷甥男'],
|
||||||
|
's,w,f,f,xb,d,d':['男眷甥女'],
|
||||||
's,w,f,m':['男眷母','太姻姆'],
|
's,w,f,m':['男眷母','太姻姆'],
|
||||||
's,w,f,m,f':['老太姻翁'],
|
's,w,f,m,f':['老太姻翁'],
|
||||||
's,w,f,m,m':['老太姻姆'],
|
's,w,f,m,m':['老太姻姆'],
|
||||||
@ -2144,11 +2270,14 @@
|
|||||||
'd,h,f,f,xb,s&o,w':['女姻家兄妇'],
|
'd,h,f,f,xb,s&o,w':['女姻家兄妇'],
|
||||||
'd,h,f,f,xb,s&l':['女姻家弟'],
|
'd,h,f,f,xb,s&l':['女姻家弟'],
|
||||||
'd,h,f,f,xb,s&l,w':['女姻家弟妇'],
|
'd,h,f,f,xb,s&l,w':['女姻家弟妇'],
|
||||||
'd,h,f,f,xb,s,s':['女姻侄'],
|
'd,h,f,f,xb,s,s':['女姻侄男'],
|
||||||
|
'd,h,f,f,xb,s,d':['女姻侄女'],
|
||||||
'd,h,f,f,xb,d&o':['女姻家姊'],
|
'd,h,f,f,xb,d&o':['女姻家姊'],
|
||||||
'd,h,f,f,xb,d&o,w':['女姻家姊婿'],
|
'd,h,f,f,xb,d&o,w':['女姻家姊婿'],
|
||||||
'd,h,f,f,xb,d&l':['女姻家妹'],
|
'd,h,f,f,xb,d&l':['女姻家妹'],
|
||||||
'd,h,f,f,xb,d&l,w':['女姻家妹婿'],
|
'd,h,f,f,xb,d&l,w':['女姻家妹婿'],
|
||||||
|
'd,h,f,f,xb,d,s':['女姻甥男'],
|
||||||
|
'd,h,f,f,xb,d,d':['女姻甥女'],
|
||||||
'd,h,f,m':['女姻母','太姻姆'],
|
'd,h,f,m':['女姻母','太姻姆'],
|
||||||
'd,h,f,m,f':['老太姻翁'],
|
'd,h,f,m,f':['老太姻翁'],
|
||||||
'd,h,f,m,m':['老太姻姆'],
|
'd,h,f,m,m':['老太姻姆'],
|
||||||
@ -2229,14 +2358,12 @@
|
|||||||
// 中文获取选择器
|
// 中文获取选择器
|
||||||
function getSelectors(str){
|
function getSelectors(str){
|
||||||
str = str.replace(/[二|三|四|五|六|七|八|九|十]{1,2}/g,'x');
|
str = str.replace(/[二|三|四|五|六|七|八|九|十]{1,2}/g,'x');
|
||||||
var lists = str.replace(/我的?/,'').replace(/家的?/,'的').split('的');
|
var lists = str.replace(/我的?(.+)/,'$1').replace(/家的?/,'的').split('的');
|
||||||
var result = [''];
|
var result = [''];
|
||||||
var isMatch = true;
|
var isMatch = true;
|
||||||
var replaceMap = {
|
var replaceMap = {
|
||||||
'哥':'兄',
|
'哥':'兄',
|
||||||
'姐':'姊',
|
'姐':'姊',
|
||||||
'媳妇':'妇',
|
|
||||||
'女婿':'婿',
|
|
||||||
'媳':'妇',
|
'媳':'妇',
|
||||||
'夫':'婿',
|
'夫':'婿',
|
||||||
'姪':'侄',
|
'姪':'侄',
|
||||||
@ -2245,6 +2372,10 @@
|
|||||||
'兄弟眷':'眷',
|
'兄弟眷':'眷',
|
||||||
'男眷':'眷'
|
'男眷':'眷'
|
||||||
};
|
};
|
||||||
|
var replaceMap2 = {
|
||||||
|
'媳妇':'妇',
|
||||||
|
'女婿':'婿'
|
||||||
|
}
|
||||||
while(lists.length){
|
while(lists.length){
|
||||||
var name = lists.shift(); //当前匹配词
|
var name = lists.shift(); //当前匹配词
|
||||||
var items = []; //当前匹配词可能性
|
var items = []; //当前匹配词可能性
|
||||||
@ -2257,6 +2388,11 @@
|
|||||||
for(var word in replaceMap){
|
for(var word in replaceMap){
|
||||||
r_name = r_name.replace(word,replaceMap[word]);
|
r_name = r_name.replace(word,replaceMap[word]);
|
||||||
}
|
}
|
||||||
|
for(var word in replaceMap2){
|
||||||
|
if(word!=name){
|
||||||
|
r_name = r_name.replace(word,replaceMap[word]);
|
||||||
|
}
|
||||||
|
}
|
||||||
var r_value = value.map(function(v){
|
var r_value = value.map(function(v){
|
||||||
for(var word in replaceMap){
|
for(var word in replaceMap){
|
||||||
v = v.replace(word,replaceMap[word]);
|
v = v.replace(word,replaceMap[word]);
|
||||||
@ -2274,12 +2410,12 @@
|
|||||||
var res = [];
|
var res = [];
|
||||||
result.forEach(function(a){
|
result.forEach(function(a){
|
||||||
items.forEach(function(b){
|
items.forEach(function(b){
|
||||||
res.push(a+','+b);
|
res.push(a+(b?','+b:''));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
result = res;
|
result = res;
|
||||||
}
|
}
|
||||||
return isMatch?result:[];
|
return isMatch?result:[''];
|
||||||
}
|
}
|
||||||
|
|
||||||
// 选择器转ID
|
// 选择器转ID
|
||||||
@ -2456,24 +2592,49 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 合并选择器,查找两个对象之间的关系
|
// 合并选择器,查找两个对象之间的关系
|
||||||
function mergeSelector(from,to,mid_sex){
|
function mergeSelector(from,to,my_sex){
|
||||||
var sex = mid_sex;
|
if(my_sex<0){
|
||||||
|
if(from.match(/^,w/)||to.match(/^,w/)){
|
||||||
|
my_sex = 1;
|
||||||
|
}else if(from.match(/^,h/)||to.match(/^,h/)){
|
||||||
|
my_sex = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var sex = my_sex;
|
||||||
|
var from_ids = selector2id(from,my_sex);
|
||||||
|
var to_ids = selector2id(to,my_sex);
|
||||||
|
var r_ids = [];
|
||||||
if(to){
|
if(to){
|
||||||
sex = to.match(/([fhs1](&[ol])?|[olx]b)$/)?1:0;
|
var isMale = false;
|
||||||
|
var isFemale = false;
|
||||||
|
to_ids.forEach(function(id){
|
||||||
|
if(id.match(/([fhs1](&[ol])?|[olx]b)$/)){
|
||||||
|
isMale = true;
|
||||||
|
}
|
||||||
|
if(id.match(/([mwd0](&[ol])?|[olx]s)$/)){
|
||||||
|
isFemale = true;
|
||||||
|
}
|
||||||
|
r_ids = r_ids.concat(reverseId(id,my_sex));
|
||||||
|
});
|
||||||
|
r_ids = unique(r_ids);
|
||||||
|
if(isMale&&isFemale){
|
||||||
|
sex = -1;
|
||||||
|
}else if(isMale){
|
||||||
|
sex = 1;
|
||||||
|
}else if(isFemale){
|
||||||
|
sex = 0;
|
||||||
}
|
}
|
||||||
var ids = reverseId(to.substr(1),mid_sex);
|
|
||||||
if(ids.length>1){
|
|
||||||
return {
|
|
||||||
'selector':(to?',['+ids.join('|')+']':'')+from,
|
|
||||||
'sex':sex
|
|
||||||
};
|
|
||||||
}else{
|
}else{
|
||||||
|
r_ids = [''];
|
||||||
|
}
|
||||||
|
// console.log('[from_ids]',from_ids,'r_ids',r_ids);
|
||||||
|
var from_selector = from_ids.length>1?'['+from_ids.join('|')+']':from_ids[0];
|
||||||
|
var to_selector = r_ids.length>1?'['+r_ids.join('|')+']':r_ids[0];
|
||||||
return {
|
return {
|
||||||
'selector':(to?','+ids[0]+'':'')+from,
|
'selector':(to?','+to_selector:'')+(from?','+from_selector:''),
|
||||||
'sex':sex
|
'sex':sex
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
var relationship = function (parameter){
|
var relationship = function (parameter){
|
||||||
var options = Object.assign({
|
var options = Object.assign({
|
||||||
@ -2493,7 +2654,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
var from_selectors = getSelectors(options.text);
|
var from_selectors = getSelectors(options.text);
|
||||||
var to_selectors = options.target?getSelectors(options.target):[''];
|
var to_selectors = getSelectors(options.target);
|
||||||
// console.log('[selectors]',from_selectors,to_selectors);
|
// console.log('[selectors]',from_selectors,to_selectors);
|
||||||
var result = []; //匹配结果
|
var result = []; //匹配结果
|
||||||
from_selectors.forEach(function(from){
|
from_selectors.forEach(function(from){
|
||||||
@ -2501,7 +2662,7 @@
|
|||||||
var data = mergeSelector(from,to,options.sex);
|
var data = mergeSelector(from,to,options.sex);
|
||||||
// console.log('[data]',data);
|
// console.log('[data]',data);
|
||||||
var ids = selector2id(data['selector'],data['sex']);
|
var ids = selector2id(data['selector'],data['sex']);
|
||||||
// console.log('[ids]',data['selector'],sex,ids);
|
// console.log('[ids]',data['selector'],data['sex'],ids);
|
||||||
if(ids){
|
if(ids){
|
||||||
ids.forEach(function(id){
|
ids.forEach(function(id){
|
||||||
var temps = [id];
|
var temps = [id];
|
||||||
|
@ -21,6 +21,10 @@ 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:'舅妈',reverse:true}),['兄弟眷兄妇','兄弟眷弟妇']);
|
t.deepEqual(relationship({text:'姑妈',target:'舅妈',reverse:true}),['兄弟眷兄妇','兄弟眷弟妇']);
|
||||||
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:'外婆',target:'女婿',reverse:true}),['外曾孙女婿','外曾外孙女婿']);
|
||||||
|
t.deepEqual(relationship({text:'我',target:'爸爸'}),['儿子','女儿']);
|
||||||
|
|
||||||
t.end();
|
t.end();
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user