updated 添加UMD打包方式

This commit is contained in:
PASSER-BY 2022-07-08 01:45:31 +08:00
parent f77273694e
commit 04136643b9
24 changed files with 5634 additions and 1275 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

@ -1,6 +1,5 @@
const fs = require('fs');
const gulp = require('gulp');
const uglify = require('gulp-uglify');
const rename = require("gulp-rename");
const cht = require('gulp-cht');
@ -10,16 +9,7 @@ gulp.task('mini', () => {
// .pipe(rename("zh-HK.html"))
// .pipe(gulp.dest("./"));
return gulp.src('script/relationship.js')
.pipe(uglify({
output:{
comments: function(node, comment){
return /^!/.test(comment.value);
}
}
}))
.pipe(rename("relationship.min.js"))
.pipe(gulp.dest('dist/'))
return gulp.src('dist/relationship.min.js')
.pipe(cht())
.pipe(rename("relationship.zh-HK.min.js"))
.pipe(gulp.dest('dist/'))

View File

@ -12,7 +12,7 @@
<title>中国亲戚关系计算器 亲戚称谓计算器 亲戚称呼大全</title>
<meta name="keywords" content="家庭称谓,亲戚称呼,亲戚称谓,亲戚叫法,亲属关系,亲属称谓,关系计算器,亲戚计算器,称呼计算器,称谓计算器,辈分计算器,亲戚关系大全,亲戚称呼大全"/>
<meta name="description" content="中国亲戚关系计算器是一款最为全面准确的亲戚称呼计算器及亲戚关系在线查询工具,逢年过节走亲访友必备神器,亦可作为家庭启蒙教育应用。"/>
<link rel="stylesheet" href="style/index.css">
<link rel="stylesheet" href="static/style/index.css">
<script type="text/javascript">
setTimeout(function(){
if(location.protocol.indexOf('http')>-1&&location.hostname.indexOf('passer-by.com')==-1){
@ -51,7 +51,7 @@
<p>逢年过节遇到三姑六婆,拒绝叫不出口的尴尬!轻松搞定亲戚关系~</p>
<p>当前亲戚称呼大全已收录约<b id="count">-</b>条亲戚关系</p>
<div class="picture">
<img src="image/app.png" width="512" height="320" alt="亲戚称呼换算APP"/>
<img src="static/image/app.png" width="512" height="320" alt="亲戚称呼换算APP"/>
<a class="btn" href="/relationship/vue/" target="_blank">访问手机版</a>
</div>
</div>
@ -299,25 +299,25 @@
<ul>
<li>
<div class="app">
<span class="icon"><img src="image/icon/miui.png" width="64" height="64"/></span>
<span class="icon"><img src="static/image/icon/miui.png" width="64" height="64"/></span>
<span class="name">小米计算器</span>
</div>
</li>
<li>
<div class="app">
<span class="icon"><img src="image/icon/quanneng.png" width="64" height="64"/></span>
<span class="icon"><img src="static/image/icon/quanneng.png" width="64" height="64"/></span>
<span class="name">全能计算器</span>
</div>
</li>
<li>
<div class="app">
<span class="icon"><img src="image/icon/yuwendaren.png" width="64" height="64"/></span>
<span class="icon"><img src="static/image/icon/yuwendaren.png" width="64" height="64"/></span>
<span class="name">有道语文达人</span>
</div>
</li>
<li>
<div class="app">
<span class="icon"><img src="image/icon/qinqi.png" width="64" height="64"/></span>
<span class="icon"><img src="static/image/icon/qinqi.png" width="64" height="64"/></span>
<span class="name">亲戚计算器</span>
</div>
</li>
@ -329,7 +329,7 @@
<div class="inner">
<div class="bd">
<div class="box">
<p><img src="image/qrcode.jpg" width="150" alt="亲戚关系微信小程序"/></p>
<p><img src="static/image/qrcode.jpg" width="150" alt="亲戚关系微信小程序"/></p>
<p>微信扫一扫,使用小程序</p>
</div>
<p>Copyright &copy; <a href="http://passer-by.com">passer-by.com</a></p>

4615
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,43 +1,43 @@
{
"name": "relationship.js",
"officialName": "relationship.js",
"version": "1.1.0",
"summary": "relationship.js is a javascript library for chinese family relationship. 中国家庭亲戚称谓计算器,家庭关系、亲戚关系算法。",
"description": "relationship.js is a javascript library for chinese family relationship.",
"author": "mumuy (http://passer-by.com/)",
"license": "MIT",
"keywords": [
"relationship",
"relationship.js",
"chinese",
"family",
"relationship",
"家庭亲戚称谓",
"亲戚关系算法"
],
"main": "dist/relationship.min.js",
"repository": {
"type": "git",
"url": "git+https://github.com/mumuy/relationship.git"
},
"bugs": {
"url": "https://github.com/mumuy/relationship/issues"
},
"devDependencies": {
"glob-parent": ">=5.1.2",
"gulp": "^4.0.2",
"gulp-cht": "^2.0.20",
"gulp-rename": "^2.0.0",
"gulp-uglify": "^3.0.2",
"set-value": ">=4.0.1",
"tape": "^5.3.1"
},
"scripts": {
"test": "node test/index.js",
"build": "gulp mini && npm run test"
},
"homepage": "https://github.com/mumuy/relationship#readme",
"directories": {
"test": "test"
}
"name": "relationship",
"officialName": "relationship.js",
"version": "1.1.0",
"summary": "relationship.js is a javascript library for chinese family relationship. 中国家庭亲戚称谓计算器,家庭关系、亲戚关系算法。",
"description": "Chinese kinship library",
"author": "HaoLe Zheng",
"license": "MIT",
"keywords": [
"relationship",
"relationship.js",
"chinese",
"family",
"relationship",
"家庭亲戚称谓",
"亲戚关系算法"
],
"main": "dist/relationship.min.js",
"repository": {
"type": "git",
"url": "git+https://github.com/mumuy/relationship.git"
},
"bugs": {
"url": "https://github.com/mumuy/relationship/issues"
},
"devDependencies": {
"glob-parent": ">=5.1.2",
"gulp": "^4.0.2",
"gulp-cht": "^2.0.20",
"gulp-rename": "^2.0.0",
"gulp-uglify": "^3.0.2",
"set-value": ">=4.0.1",
"tape": "^5.3.1"
},
"scripts": {
"test": "node test/index.js",
"build": "webpack && gulp mini && npm run test"
},
"homepage": "https://passer-by.com/relationship/",
"directories": {
"test": "test"
}
}

642
src/branch.js Normal file
View File

@ -0,0 +1,642 @@
// 分支关系链
export default {
'f,f,f,f,f,f,f,f,{G1M}':['鼻祖父'],
'f,f,f,f,f,f,f,f,{G1M},w':['鼻祖母'],
'f,f,f,f,f,f,f,f,{G1W}':['鼻祖母'],
'f,f,f,f,f,f,f,f,{G1W},h':['鼻祖父'],
'f,f,f,f,f,f,f,{G1M}':['远祖父'],
'f,f,f,f,f,f,f,{G1M},w':['远祖母'],
'f,f,f,f,f,f,f,{G1W}':['远祖母'],
'f,f,f,f,f,f,f,{G1W},h':['远祖父'],
'f,f,f,f,f,f,{G1M}':['太祖父'],
'f,f,f,f,f,f,{G1M},w':['太祖母'],
'f,f,f,f,f,f,{G1W}':['姑太祖母'],
'f,f,f,f,f,f,{G1W},h':['姑太祖父'],
'f,f,f,f,f,{G1M}':['烈祖父'],
'f,f,f,f,f,{G1M},w':['烈祖母'],
'f,f,f,f,f,{G1W}':['烈祖母'],
'f,f,f,f,f,{G1W},h':['烈祖父'],
'f,f,f,f,{G1M}':['天祖父'],
'f,f,f,f,{G1M},w':['天祖母'],
'f,f,f,f,{G1W}':['天祖母'],
'f,f,f,f,{G1W},h':['天祖父'],
// 高祖辈
'f,f,f,{G1M}':['高祖父','外曾外曾外毑父'],
'f,f,f,{G1M},w':['高祖母','外曾外曾外毑母'],
'f,f,f,{G1W}':['高祖母','外曾外曾外毑母'],
'f,f,f,{G1W},h':['高祖父','外曾外曾外毑父'],
'f,f,m,{G1M}':['高外祖父','外曾外曾毑父'],
'f,f,m,{G1M},w':['高外祖母','外曾外曾毑母'],
'f,f,m,{G1W}':['高外祖母','外曾外曾毑母'],
'f,f,m,{G1W},h':['高外祖父','外曾外曾毑父'],
'f,m,f,{G1M}':['曾外曾祖父','外高外毑父'],
'f,m,f,{G1M},w':['曾外曾祖母','外高外毑母'],
'f,m,f,{G1W}':['曾外曾祖母','外高外毑母'],
'f,m,f,{G1W},h':['曾外曾祖父','外高外毑父'],
'f,m,m,{G1M}':['曾外曾外祖父','外高毑父'],
'f,m,m,{G1M},w':['曾外曾外祖母','外高毑母'],
'f,m,m,{G1W}':['曾外曾外祖母','外高毑母'],
'f,m,m,{G1W},h':['曾外曾外祖父','外高毑父'],
'm,f,f,{G1M}':['外高祖父','曾外曾外毑父'],
'm,f,f,{G1M},w':['外高祖母','曾外曾外毑母'],
'm,f,f,{G1W}':['外高祖母','曾外曾外毑母'],
'm,f,f,{G1W},h':['外高祖父','曾外曾外毑父'],
'm,f,m,{G1M}':['外高外祖父','曾外曾祖毑父'],
'm,f,m,{G1M},w':['外高外祖母','曾外曾祖毑母'],
'm,f,m,{G1W}':['外高外祖母','曾外曾祖毑母'],
'm,f,m,{G1W},h':['外高外祖父','曾外曾祖毑父'],
'm,m,f,{G1M}':['外曾外曾祖父','高外毑父'],
'm,m,f,{G1M},w':['外曾外曾祖母','高外毑母'],
'm,m,f,{G1W}':['外曾外曾祖母','高外毑母'],
'm,m,f,{G1W},h':['外曾外曾祖父','高外毑父'],
'm,m,m,{G1M}':['外曾外曾外祖父','高毑父'],
'm,m,m,{G1M},w':['外曾外曾外祖母','高毑母'],
'm,m,m,{G1W}':['外曾外曾外祖母','高毑母'],
'm,m,m,{G1W},h':['外曾外曾外祖父','高毑父'],
// 曾祖辈
'f,f,{G1M}':['?曾祖父','曾?祖父','?太公','太?公','?公太','太?爷','?太爷','?太爷爷','太?爷爷'],
'f,f,{G1M},w':['?曾祖母','曾?祖母','?太婆','太?婆','?婆太','太?奶','?太奶','?太奶奶','太?奶奶'],
'f,f,{G1W}':['?曾祖母','曾?祖母','?太婆','太?婆','?婆太','太?奶','?太奶','?太奶奶','太?奶奶'],
'f,f,{G1W},h':['?曾祖父','曾?祖父','?太公','太?公','?公太','太?爷','?太爷','?太爷爷','太?爷爷'],
'f,m,{G1M}':['?曾外祖父','曾外?祖父','?太外公','太外?公','太外?爷','?太外爷','?太外爷爷','太外?爷爷'],
'f,m,{G1M},w':['?曾外祖母','曾外?祖母','?太外婆','太外?婆','太外?奶','?太外奶','?太外奶奶','太外?奶奶'],
'f,m,{G1W}':['?曾外祖母','曾外?祖母','?太外婆','太外?婆','太外?奶','?太外奶','?太外奶奶','太外?奶奶'],
'f,m,{G1W},h':['?曾外祖父','曾外?祖父','?太外公','太外?公','太外?爷','?太外爷','?太外爷爷','太外?爷爷'],
'm,f,{G1M}':['?外曾祖父','外曾?祖父','?外太公','外太?公','外太?爷','?外太爷','?外太爷爷','外太?爷爷'],
'm,f,{G1M},w':['?外曾祖母','外曾?祖母','?外太婆','外太?婆','外太?奶','?外太奶','?外太奶奶','外太?奶奶'],
'm,f,{G1W}':['?外曾祖母','外曾?祖母','?外太婆','外太?婆','外太?奶','?外太奶','?外太奶奶','外太?奶奶'],
'm,f,{G1W},h':['?外曾祖父','外曾?祖父','?外太公','外太?公','外太?爷','?外太爷','?外太爷爷','外太?爷爷'],
'm,m,{G1M}':['?外曾外祖父','外曾外?祖父','?外太外公','外太外?公','外太外?爷','?外太外爷','?外太外爷爷','外太外?爷爷'],
'm,m,{G1M},w':['?外曾外祖母','外曾外?祖母','?外太外婆','外太外?婆','外太外?奶','?外太外奶','?外太外奶奶','外太外?奶奶'],
'm,m,{G1W}':['?外曾外祖母','外曾外?祖母','?外太外婆','外太外?婆','外太外?奶','?外太外奶','?外太外奶奶','外太外?奶奶'],
'm,m,{G1W},h':['?外曾外祖父','外曾外?祖父','?外太外公','外太外?公','外太外?爷','?外太外爷','?外太外爷爷','外太?外爷爷'],
// 祖辈
'f,{G1M}':['祖父','公','太?父','奶爷','爷爷','爷'],
'f,{G1M},w':['祖母','婆','太?母','奶奶','奶'],
'f,{G1W}':['祖母','婆','太?母','奶奶','奶'],
'f,{G1W},h':['祖父','公','太?父','奶爷','爷爷','爷'],
'm,{G1M}':['外祖父','外公','外爷','外?公','外?祖父','外太?父','太外?父','姥爷','姥公','毑公','毑爷','毑父','嘎公'],
'm,{G1M},w':['外祖母','外婆','外奶','外?婆','外?祖母','外太?母','太外?母','姥姥','姥娘','姥婆','毑婆','毑毑','毑母','嘎嘎','嫏嫏','嫏娘','姥'],
'm,{G1W}':['外祖母','外婆','外奶','外?婆','外?祖母','外太?母','太外?母','姥姥','姥娘','姥婆','毑婆','毑毑','毑母','嘎嘎','嫏嫏','嫏娘','姥'],
'm,{G1W},h':['外祖父','外公','外爷','外?公','外?祖父','外太?父','太外?父','姥爷','姥公','毑公','毑爷','毑父','嘎公'],
'f,f,{G1},s&o':['伯祖父','伯爷爷'],
'f,f,{G1},s&o,w':['伯祖母','伯奶奶'],
'f,f,{G1},s&l':['叔祖父','叔爷爷'],
'f,f,{G1},s&l,w':['叔祖母','叔奶奶'],
'f,f,{G1},d':['姑祖母','姑奶奶'],
'f,f,{G1},d,h':['姑祖父','姑爷爷'],
'f,m,{G1},s':['舅祖父','舅爷爷'],
'f,m,{G1},s,w':['舅祖母','舅奶奶'],
'f,m,{G1},d':['姨祖母','姨爷爷'],
'f,m,{G1},d,h':['姨祖父','姨奶奶'],
'm,f,{G1},s&o':['伯外祖父','伯外公','伯姥爷'],
'm,f,{G1},s&o,w':['伯外祖母','伯外婆','伯姥姥'],
'm,f,{G1},s&l':['叔外祖父','叔外公','叔姥爷'],
'm,f,{G1},s&l,w':['叔外祖母','叔外婆','叔姥姥'],
'm,f,{G1},d':['姑外祖母','姑外婆','姑姥姥'],
'm,f,{G1},d,h':['姑外祖父','姑外公','姑姥爷'],
'm,m,{G1},s':['舅外祖父','舅外公','舅姥爷'],
'm,m,{G1},s,w':['舅外祖母','舅外婆','舅姥姥'],
'm,m,{G1},d':['姨外祖母','姨外公','姨姥爷'],
'm,m,{G1},d,h':['姨外祖父','姨外婆','姨姥姥'],
// 父辈
'{G1M}':['父'],
'{G1M},w':['母'],
'{G1W}':['母'],
'{G1W},h':['父'],
'f,{G1},s&o':['伯父','伯伯','伯','大爷'],
'f,{G1},s&o,w':['伯母','大娘'],
'f,{G1},s&l':['叔父','叔爸','叔叔','叔'],
'f,{G1},s&l,w':['叔母','婶'],
'f,{G1},d':['姑母','姑姑','姑妈','姑'],
'f,{G1},d,h':['姑父'],
'm,{G1},s':['舅父','舅舅','舅爸','舅'],
'm,{G1},s,w':['舅母','舅妈'],
'm,{G1},d':['姨母','姨姨','姨妈','姨'],
'm,{G1},d,h':['姨父','姨爸','姨丈'],
// 同辈及以下
'{G1},[s&o|s&l]':['兄弟'],
'{G1},[s&o|s&l],w':['兄弟妇'],
'{G1},s&o':['哥'],
'{G1},s&o,w':['嫂','嫂子'],
'{G1},s&l':['弟'],
'{G1},s&l,w':['弟媳'],
'{G1},s,s':['侄男','侄子','侄儿','男'],
'{G1},s,s,w':['侄妇'],
'{G1},s,s,s':['侄孙男','孙男'],
'{G1},s,s,s,w':['侄孙妇'],
'{G1},s,s,d':['侄孙女','孙女'],
'{G1},s,s,d,h':['侄孙婿'],
'{G1},s,d':['侄女','侄女儿','女'],
'{G1},s,d,h':['侄婿'],
'{G1},s,d,s':['侄外孙男','外孙男'],
'{G1},s,d,s,w':['侄外孙妇'],
'{G1},s,d,d':['侄外孙女','外孙女'],
'{G1},s,d,d,h':['侄外孙婿'],
'{G1},[d&o|d&l]':['姐妹'],
'{G1},[d&o|d&l],h':['姐妹壻'],
'{G1},d&o':['姐'],
'{G1},d&o,h':['姐夫'],
'{G1},d&l':['妹'],
'{G1},d&l,h':['妹夫'],
'{G1},d,s':['甥男','男'],
'{G1},d,s,w':['甥妇'],
'{G1},d,s,s':['甥孙男','孙男'],
'{G1},d,s,s,w':['甥孙妇'],
'{G1},d,s,d':['甥孙女','孙女'],
'{G1},d,s,d,h':['甥孙婿'],
'{G1},d,d':['甥女','女'],
'{G1},d,d,h':['甥婿'],
'{G1},d,d,s':['甥外孙男','外孙男'],
'{G1},d,d,s,w':['甥外孙妇'],
'{G1},d,d,d':['甥外孙女','外孙女'],
'{G1},d,d,d,h':['甥外孙婿'],
// 其他旁系
'{G2}':['祖父'],
'{G2},w':['祖母'],
'{G2},s':['父'],
'{G2},s,w':['母'],
'{G2},s,s&o':['兄'],
'{G2},s,s&l':['弟'],
'{G2},s,[s&o|s&l]':['兄弟'],
'{G2},s,d&o':['姊'],
'{G2},s,d&l':['妹'],
'{G2},s,[d&o|d&l]':['姊妹'],
'{G2},s,s,s':['男','子'],
'{G2},s,s,d':['女'],
// 夫族
'h,f,{G1M}':['祖公父','祖公','祖翁','奶公'],
'h,f,{G1M},w':['祖婆母','祖婆','祖姆','奶婆'],
'h,f,{G1W}':['祖婆母','祖婆','祖姆','奶婆'],
'h,f,{G1W},h':['祖公父','祖公','祖翁','奶公'],
'h,m,{G1M}':['外祖公父','外祖公','外祖翁','姥公'],
'h,m,{G1M},w':['外祖婆母','外祖婆','外祖姆','姥婆'],
'h,m,{G1W}':['外祖婆母','外祖婆','外祖姆','姥婆'],
'h,m,{G1W},h':['外祖公父','外祖公','外祖翁','姥公'],
'h,{G1M}':['公父','公公'],
'h,{G1M},w':['婆母','婆婆'],
'h,{G1W}':['婆母','婆婆'],
'h,{G1W},h':['公父','公公'],
'h,{G1},s&o':['大伯子','大伯兄'],
'h,{G1},s&o,w':['大婶子','大伯嫂'],
'h,{G1},s&l':['小叔子','小叔弟'],
'h,{G1},s&l,w':['小婶子','小叔弟妇'],
'h,{G1},s':['伯叔'],
'h,{G1},s,w':['妯娌'],
'h,{G1},d&o':['大姑子','大姑姐'],
'h,{G1},d&o,h':['大姑夫','大姑姐夫'],
'h,{G1},d&l':['小姑子','小姑妹'],
'h,{G1},d&l,h':['小姑夫','小姑妹夫'],
'h,{G1},d':['姑子'],
'h,{G1},d,h':['姑夫'],
// 妻族
'w,f,{G1M}':['祖岳父','太?岳','祖丈人','爷丈人','奶爷丈人'],
'w,f,{G1M},w':['祖岳母','太?岳母','祖丈母','祖丈母娘','奶丈母娘','奶丈母'],
'w,f,{G1W}':['祖岳母','太?岳母','祖丈母','祖丈母娘','奶丈母娘','奶丈母'],
'w,f,{G1W},h':['祖岳父','太?岳父','祖丈人','爷丈人','奶爷丈人'],
'w,m,{G1M}':['外祖岳父','外太?岳父','太外?岳父','外祖丈人','姥爷丈人'],
'w,m,{G1M},w':['外祖岳母','外太?岳母','太外?岳母','外祖丈母','外祖丈母娘','姥丈母娘','姥丈母'],
'w,m,{G1W}':['外祖岳母','外太?岳母','太外?岳母','外祖丈母','外祖丈母娘','姥丈母娘','姥丈母'],
'w,m,{G1W},h':['外祖岳父','外太?岳父','太外?岳父','外祖丈人','外爷丈人','姥爷丈人'],
'w,{G1M}':['岳父','丈人','丈人爹'],
'w,{G1M},w':['岳母','丈母','丈母娘'],
'w,{G1W}':['岳母','丈母','丈母娘'],
'w,{G1W},h':['岳父','丈人','丈人爹'],
'w,{G1},s&o':['大舅子','大舅兄','舅兄'],
'w,{G1},s&o,w':['大舅妇','大舅姆','大舅兄妇','舅兄妇','舅姐','大舅姐','大妗子','大妗儿'],
'w,{G1},s&l':['小舅子','小舅弟','舅弟'],
'w,{G1},s&l,w':['小舅妇','小舅姆','小舅弟妇','舅弟妇','舅妹','小舅妹','小妗子','小妗儿'],
'w,{G1},s':['舅子'],
'w,{G1},s,w':['舅嫂'],
'w,{G1},d&o':['大姨子','大姨姐','姨姐'],
'w,{G1},d&o,h':['大姨夫','大姨姐夫','襟兄','姨兄','大姨哥','大尹子'],
'w,{G1},d&l':['小姨子','小姨妹','姨妹'],
'w,{G1},d&l,h':['小姨夫','小姨妹夫','襟弟','姨弟','小姨弟','小尹子'],
'w,{G1},d':['姨子'],
'w,{G1},d,h':['连襟','连桥'],
// 子辈及以下
'{G0},s':['男','男儿','儿','子'],
'{G0},s,w':['媳妇','妇'],
'{G0},s,s':['孙','孙男','孙子'],
'{G0},s,s,w':['孙妇'],
'{G0},s,s,s':['曾孙','曾孙男'],
'{G0},s,s,s,w':['曾孙妇'],
'{G0},s,s,s,s':['玄孙','玄孙男'],
'{G0},s,s,s,d':['玄孙女'],
'{G0},s,s,d':['曾孙女'],
'{G0},s,s,d,h':['曾孙婿'],
'{G0},s,s,d,s':['玄外孙','玄外孙男'],
'{G0},s,s,d,d':['玄外孙女'],
'{G0},s,d':['孙女'],
'{G0},s,d,h':['孙婿'],
'{G0},s,d,s':['曾外孙','曾外孙男'],
'{G0},s,d,s,w':['曾外孙妇'],
'{G0},s,d,s,s':['曾外曾孙','曾外曾孙男'],
'{G0},s,d,s,d':['曾外曾孙女'],
'{G0},s,d,d':['曾外孙女'],
'{G0},s,d,d,h':['曾外孙婿'],
'{G0},s,d,d,s':['曾外曾外孙','曾外曾外孙男'],
'{G0},s,d,d,d':['曾外曾外孙女'],
'{G0},d':['女','女儿'],
'{G0},d,s':['外孙','外孙男'],
'{G0},d,s,w':['外孙妇'],
'{G0},d,s,s':['外曾孙','外曾孙男'],
'{G0},d,s,s,w':['外曾孙妇'],
'{G0},d,s,s,s':['外玄孙','外玄孙男'],
'{G0},d,s,s,d':['外玄孙女'],
'{G0},d,s,d':['外曾孙女'],
'{G0},d,s,d,h':['外曾孙婿'],
'{G0},d,s,d,s':['外玄外孙','外玄外孙男'],
'{G0},d,s,d,d':['外玄外孙女'],
'{G0},d,d':['外孙女'],
'{G0},d,d,h':['外孙婿'],
'{G0},d,d,s':['外曾外孙','外曾外孙男'],
'{G0},d,d,s,w':['外曾外孙妇'],
'{G0},d,d,s,s':['外曾外曾孙','外曾外曾孙男'],
'{G0},d,d,s,d':['外曾外曾孙女'],
'{G0},d,d,d':['外曾外孙女'],
'{G0},d,d,d,h':['外曾外孙婿'],
'{G0},d,d,d,s':['外曾外曾外孙'],
'{G0},d,d,d,d':['外曾外曾外孙女'],
// 姻亲关系
'{M2W},xb':['舅祖父'],
'{M2W},xb,w':['舅祖母'],
'{M2W},xb,s&o':['舅表伯父'],
'{M2W},xb,s&o,w':['舅表伯母'],
'{M2W},xb,s&l':['舅表叔父'],
'{M2W},xb,s&l,w':['舅表叔母'],
'{M2W},xb,d':['舅表姑母'],
'{M2W},xb,d,h':['舅表姑父'],
'{M2W},xs':['姨祖母'],
'{M2W},xs,h':['姨祖父'],
'{M2W},xs,s&o':['姨伯父'],
'{M2W},xs,s&o,w':['姨伯母'],
'{M2W},xs,s&l':['姨叔父'],
'{M2W},xs,s&l,w':['姨叔母'],
'{M2W},xs,d':['姨姑母'],
'{M2W},xs,d,h':['姨姑父'],
'{M2M},xb':['叔祖父'],
'{M2M},xb,w':['叔祖母'],
'{M2M},xb,s&o':['堂伯父'],
'{M2M},xb,s&o,w':['堂伯母'],
'{M2M},xb,s&l':['堂叔父'],
'{M2M},xb,s&l,w':['堂叔母'],
'{M2M},xb,d':['堂姑母'],
'{M2M},xb,d,h':['堂姑父'],
'{M2M},xs':['姑祖母'],
'{M2M},xs,h':['姑祖父'],
'{M2M},xs,s&o':['姑表伯父'],
'{M2M},xs,s&o,w':['姑表伯母'],
'{M2M},xs,s&l':['姑表叔父'],
'{M2M},xs,s&l,w':['姑表叔母'],
'{M2M},xs,d':['姑表姑母'],
'{M2M},xs,d,h':['姑表姑父'],
'{M1W},f':['外祖父'],
'{M1W},f,xb,s':['堂舅父'],
'{M1W},f,xb,s,w':['堂舅母'],
'{M1W},f,xb,d':['堂姨母'],
'{M1W},f,xb,d,h':['堂姨父'],
'{M1W},f,ob':['伯外祖父'],
'{M1W},f,ob,w':['伯外祖母'],
'{M1W},f,lb':['叔外祖父'],
'{M1W},f,lb,w':['叔外祖母'],
'{M1W},f,xs':['姑外祖母'],
'{M1W},f,xs,h':['姑外祖父'],
'{M1W},f,xs,s':['姑表舅父'],
'{M1W},f,xs,s,w':['姑表舅母'],
'{M1W},f,xs,d':['姑表姨母'],
'{M1W},f,xs,d,h':['姑表姨父'],
'{M1W},m':['外祖母'],
'{M1W},m,xb':['舅外祖父'],
'{M1W},m,xb,w':['舅外祖母'],
'{M1W},m,xb,s':['舅表舅父'],
'{M1W},m,xb,s,w':['舅表舅母'],
'{M1W},m,xb,d':['舅表姨母'],
'{M1W},m,xb,d,h':['舅表姨父'],
'{M1W},m,xs':['姨外祖母'],
'{M1W},m,xs,h':['姨外祖父'],
'{M1W},m,xs,s':['姨舅父'],
'{M1W},m,xs,s,w':['姨舅母'],
'{M1W},m,xs,d':['姨姨母'],
'{M1W},m,xs,d,h':['姨姨父'],
'{M1W},xb':['舅父'],
'{M1W},xb,w':['舅母'],
'{M1W},xb,[s|d]':['舅表兄弟姊妹'],
'{M1W},xb,[s&o|s&l]':['舅表兄弟'],
'{M1W},xb,[s&o|s&l],w':['舅表兄弟妇'],
'{M1W},xb,s&o':['舅表兄'],
'{M1W},xb,s&o,w':['舅表兄妇'],
'{M1W},xb,s&l':['舅表弟'],
'{M1W},xb,s&l,w':['舅表弟妇'],
'{M1W},xb,s,s':['舅表侄男','侄男'],
'{M1W},xb,s,s,w':['舅表侄妇','侄妇'],
'{M1W},xb,s,d':['舅表侄女','侄女'],
'{M1W},xb,s,d,h':['舅表侄婿','侄婿'],
'{M1W},xb,[d&o|d&l]':['舅表姊妹'],
'{M1W},xb,[d&o|d&l],h':['舅表姊妹壻'],
'{M1W},xb,d&o':['舅表姊'],
'{M1W},xb,d&o,h':['舅表姊壻'],
'{M1W},xb,d&l':['舅表妹'],
'{M1W},xb,d&l,h':['舅表妹壻'],
'{M1W},xb,d,s':['舅表甥男','甥男'],
'{M1W},xb,d,s,w':['舅表甥妇','甥妇'],
'{M1W},xb,d,d':['舅表甥女','甥女'],
'{M1W},xb,d,d,h':['舅表甥婿','甥婿'],
'{M1W},xs':['姨母'],
'{M1W},xs,h':['姨父'],
'{M1W},xs,[s|d]':['姨表兄弟姊妹'],
'{M1W},xs,[s&o|s&l]':['姨表兄弟'],
'{M1W},xs,[s&o|s&l],w':['姨表兄弟妇'],
'{M1W},xs,s&o':['姨表兄'],
'{M1W},xs,s&o,w':['姨表兄妇'],
'{M1W},xs,s&l':['姨表弟'],
'{M1W},xs,s&l,w':['姨表弟妇'],
'{M1W},xs,s,s':['姨表侄男','侄男'],
'{M1W},xs,s,s,w':['姨表侄妇','侄妇'],
'{M1W},xs,s,d':['姨表侄女','侄女'],
'{M1W},xs,s,d,h':['姨表侄婿','侄婿'],
'{M1W},xs,[d&o|d&l]':['姨表姊妹'],
'{M1W},xs,[d&o|d&l],h':['姨表姊妹壻'],
'{M1W},xs,d&o':['姨表姊'],
'{M1W},xs,d&o,h':['姨表姊壻'],
'{M1W},xs,d&l':['姨表妹'],
'{M1W},xs,d&l,h':['姨表妹壻'],
'{M1W},xs,d,s':['姨表甥男','甥男'],
'{M1W},xs,d,s,w':['姨表甥妇','甥妇'],
'{M1W},xs,d,d':['姨表甥女','甥女'],
'{M1W},xs,d,d,h':['姨表甥婿','甥婿'],
'{M1M},f':['祖父'],
'{M1M},f,xb,s&o':['堂伯父'],
'{M1M},f,xb,s&o,w':['堂伯母'],
'{M1M},f,xb,s&l':['堂叔父'],
'{M1M},f,xb,s&l,w':['堂叔母'],
'{M1M},f,xb,d':['堂姑母'],
'{M1M},f,xb,d,h':['堂姑父'],
'{M1M},f,ob':['伯祖父'],
'{M1M},f,ob,w':['伯祖母'],
'{M1M},f,lb':['叔祖父'],
'{M1M},f,lb,w':['叔祖母'],
'{M1M},f,xs':['姑祖母'],
'{M1M},f,xs,h':['姑祖父'],
'{M1M},f,xs,s&o':['姑表伯父'],
'{M1M},f,xs,s&o,w':['姑表伯母'],
'{M1M},f,xs,s&l':['姑表叔父'],
'{M1M},f,xs,s&l,w':['姑表叔母'],
'{M1M},f,xs,d':['姑表姑母'],
'{M1M},f,xs,d,h':['姑表姑父'],
'{M1M},m':['祖母'],
'{M1M},m,xb':['舅祖父'],
'{M1M},m,xb,w':['舅祖母'],
'{M1M},m,xb,s&o':['舅表伯父'],
'{M1M},m,xb,s&o,w':['舅表伯母'],
'{M1M},m,xb,s&l':['舅表叔父'],
'{M1M},m,xb,s&l,w':['舅表叔母'],
'{M1M},m,xb,d':['舅表姑母'],
'{M1M},m,xb,d,h':['舅表姑父'],
'{M1M},m,xs':['姨祖母'],
'{M1M},m,xs,h':['姨祖父'],
'{M1M},m,xs,s&o':['姨伯父'],
'{M1M},m,xs,s&o,w':['姨伯母'],
'{M1M},m,xs,s&l':['姨叔父'],
'{M1M},m,xs,s&l,w':['姨叔母'],
'{M1M},m,xs,d':['姨姑母'],
'{M1M},m,xs,d,h':['姨姑父'],
'{M1M},xb':['叔伯父'],
'{M1M},xb,w':['叔伯母'],
'{M1M},ob':['伯父'],
'{M1M},ob,w':['伯母'],
'{M1M},lb':['叔父'],
'{M1M},lb,w':['叔母'],
'{M1M},xb,[s|d]':['叔表兄弟姊妹'],
'{M1M},xb,[s&o|s&l]':['叔表兄弟'],
'{M1M},xb,[s&o|s&l],w':['叔表兄弟妇'],
'{M1M},xb,s&o':['叔表兄'],
'{M1M},xb,s&o,w':['叔表兄妇'],
'{M1M},xb,s&l':['叔表弟'],
'{M1M},xb,s&l,w':['叔表弟妇'],
'{M1M},xb,s,s':['叔表侄男','侄男'],
'{M1M},xb,s,s,w':['叔表侄妇','侄妇'],
'{M1M},xb,s,d':['叔表侄女','侄女'],
'{M1M},xb,s,d,h':['叔表侄婿','侄婿'],
'{M1M},xb,[d&o|d&l]':['叔表姊妹'],
'{M1M},xb,[d&o|d&l],h':['叔表姊妹壻'],
'{M1M},xb,d&o':['叔表姊'],
'{M1M},xb,d&o,h':['叔表姊壻'],
'{M1M},xb,d&l':['叔表妹'],
'{M1M},xb,d&l,h':['叔表妹壻'],
'{M1M},xb,d,s':['叔表甥男','甥男'],
'{M1M},xb,d,s,w':['叔表甥妇','甥妇'],
'{M1M},xb,d,d':['叔表甥女','甥女'],
'{M1M},xb,d,d,h':['叔表甥婿','甥婿'],
'{M1M},xs':['姑母'],
'{M1M},xs,h':['姑父'],
'{M1M},xs,[s|d]':['姑表兄弟姊妹'],
'{M1M},xs,[s&o|s&l]':['姑表兄弟'],
'{M1M},xs,[s&o|s&l],w':['姑表兄弟妇'],
'{M1M},xs,s&o':['姑表兄'],
'{M1M},xs,s&o,w':['姑表兄妇'],
'{M1M},xs,s&l':['姑表弟'],
'{M1M},xs,s&l,w':['姑表弟妇'],
'{M1M},xs,s,s':['姑表侄男','侄男'],
'{M1M},xs,s,s,w':['姑表侄妇','侄妇'],
'{M1M},xs,s,d':['姑表侄女','侄女'],
'{M1M},xs,s,d,h':['姑表侄婿','侄婿'],
'{M1M},xs,[d&o|d&l]':['姑表姊妹'],
'{M1M},xs,[d&o|d&l],h':['姑表姊妹壻'],
'{M1M},xs,d&o':['姑表姊'],
'{M1M},xs,d&o,h':['姑表姊壻'],
'{M1M},xs,d&l':['姑表妹'],
'{M1M},xs,d&l,h':['姑表妹壻'],
'{M1M},xs,d,s':['姑表甥男','甥男'],
'{M1M},xs,d,s,w':['姑表甥妇','甥妇'],
'{M1M},xs,d,d':['姑表甥女','甥女'],
'{M1M},xs,d,d,h':['姑表甥婿','甥婿'],
'{M0},f':['父'],
'{M0},f,f':['祖父'],
'{M0},f,f,ob':['伯祖父'],
'{M0},f,f,ob,w':['伯祖母'],
'{M0},f,f,lb':['叔祖父'],
'{M0},f,f,lb,w':['叔祖母'],
'{M0},f,f,xs':['姑祖母'],
'{M0},f,f,xs,h':['姑祖父'],
'{M0},f,m':['祖母'],
'{M0},f,m,xb':['舅祖父'],
'{M0},f,m,xb,w':['舅祖母'],
'{M0},f,m,xs':['姨祖母'],
'{M0},f,m,xs,h':['姨祖父'],
'{M0},f,ob':['伯父'],
'{M0},f,ob,w':['伯母'],
'{M0},f,lb':['叔父'],
'{M0},f,lb,w':['叔母'],
'{M0},f,xb,[s|d]':['叔表兄弟姊妹','叔表姊妹兄弟'],
'{M0},f,xb,s':['叔表兄弟'],
'{M0},f,xb,s,w':['叔表兄弟妇'],
'{M0},f,xb,s&o':['叔表兄'],
'{M0},f,xb,s&o,w':['叔表兄妇'],
'{M0},f,xb,s&l':['叔表弟'],
'{M0},f,xb,s&l,w':['叔表弟妇'],
'{M0},f,xb,d':['叔表姊妹'],
'{M0},f,xb,d,h':['叔表姊妹壻'],
'{M0},f,xb,d&o':['叔表姊'],
'{M0},f,xb,d&o,h':['叔表姊壻'],
'{M0},f,xb,d&l':['叔表妹'],
'{M0},f,xb,d&l,h':['叔表妹壻'],
'{M0},f,xs':['姑母'],
'{M0},f,xs,h':['姑父'],
'{M0},f,xs,[s|d]':['姑表兄弟姊妹','姑表姊妹兄弟'],
'{M0},f,xs,s':['姑表兄弟'],
'{M0},f,xs,s,w':['姑表兄弟妇'],
'{M0},f,xs,s&o':['姑表兄'],
'{M0},f,xs,s&o,w':['姑表兄妇'],
'{M0},f,xs,s&l':['姑表弟'],
'{M0},f,xs,s&l,w':['姑表弟妇'],
'{M0},f,xs,d':['姑表姊妹'],
'{M0},f,xs,d,h':['姑表姊妹壻'],
'{M0},f,xs,d&o':['姑表姊'],
'{M0},f,xs,d&o,h':['姑表姊壻'],
'{M0},f,xs,d&l':['姑表妹'],
'{M0},f,xs,d&l,h':['姑表妹壻'],
'{M0},m':['母'],
'{M0},m,f':['外祖父'],
'{M0},m,f,ob':['伯外祖父'],
'{M0},m,f,ob,w':['伯外祖母'],
'{M0},m,f,lb':['叔外祖父'],
'{M0},m,f,lb,w':['叔外祖母'],
'{M0},m,f,xs':['姑外祖母'],
'{M0},m,f,xs,h':['姑外祖父'],
'{M0},m,m':['外祖母'],
'{M0},m,m,xb':['舅外祖父'],
'{M0},m,m,xb,w':['舅外祖母'],
'{M0},m,m,xs':['姨外祖母'],
'{M0},m,m,xs,h':['姨外祖父'],
'{M0},m,xb':['舅父'],
'{M0},m,xb,w':['舅母'],
'{M0},m,xb,[s|d]':['舅表兄弟姊妹','舅表姊妹兄弟'],
'{M0},m,xb,s':['舅表兄弟'],
'{M0},m,xb,s,w':['舅表兄弟妇'],
'{M0},m,xb,s&o':['舅表兄'],
'{M0},m,xb,s&o,w':['舅表兄妇'],
'{M0},m,xb,s&l':['舅表弟'],
'{M0},m,xb,s&l,w':['舅表弟妇'],
'{M0},m,xb,d':['舅表姊妹'],
'{M0},m,xb,d,h':['舅表姊妹壻'],
'{M0},m,xb,d&o':['舅表姊'],
'{M0},m,xb,d&o,h':['舅表姊壻'],
'{M0},m,xb,d&l':['舅表妹'],
'{M0},m,xb,d&l,h':['舅表妹壻'],
'{M0},m,xs':['姨母'],
'{M0},m,xs,h':['姨父'],
'{M0},m,xs,[s|d]':['姨兄弟姊妹','姨姊妹兄弟'],
'{M0},m,xs,s':['姨兄弟'],
'{M0},m,xs,s,w':['姨兄弟妇'],
'{M0},m,xs,s&o':['姨兄'],
'{M0},m,xs,s&o,w':['姨兄妇'],
'{M0},m,xs,s&l':['姨弟'],
'{M0},m,xs,s&l,w':['姨弟妇'],
'{M0},m,xs,d':['姨姊妹'],
'{M0},m,xs,d,h':['姨姊妹壻'],
'{M0},m,xs,d&o':['姨姊'],
'{M0},m,xs,d&o,h':['姨姊壻'],
'{M0},m,xs,d&l':['姨妹'],
'{M0},m,xs,d&l,h':['姨妹壻'],
'{M0},[ob|lb]':['兄弟'],
'{M0},[ob|lb],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},[os|ls]':['姊妹'],
'{M0},[os|ls],h':['姊妹壻'],
'{M0},os':['姊'],
'{M0},os,h':['姊壻'],
'{M0},ls':['妹'],
'{M0},ls,h':['妹壻'],
'{M0},xs,s':['甥男'],
'{M0},xs,s,w':['甥妇'],
'{M0},xs,d':['甥女'],
'{M0},xs,d,h':['甥婿'],
'{M-1},[f&o|f&l]':['兄弟'],
'{M-1},f&o':['兄'],
'{M-1},f&l':['弟'],
'{M-1},f,f':['父'],
'{M-1},f,f,f':['祖父'],
'{M-1},f,f,m':['祖母'],
'{M-1},f,f,ob':['伯父'],
'{M-1},f,f,ob,w':['伯母'],
'{M-1},f,f,lb':['叔父'],
'{M-1},f,f,lb,w':['叔母'],
'{M-1},f,m':['母'],
'{M-1},f,m,f':['外祖父'],
'{M-1},f,m,m':['外祖母'],
'{M-1},f,[ob|lb]':['叔兄弟'],
'{M-1},f,[ob|lb],w':['叔兄弟妇'],
'{M-1},f,ob':['叔兄'],
'{M-1},f,ob,w':['叔兄妇'],
'{M-1},f,lb':['叔弟'],
'{M-1},f,lb,w':['叔弟妇'],
'{M-1},f,xb,s':['叔男'],
'{M-1},f,xb,d':['叔女'],
'{M-1},f,[os|ls]':['姑姊妹'],
'{M-1},f,[os|ls],h':['姑姊妹壻'],
'{M-1},f,os':['姑姊'],
'{M-1},f,os,h':['姑姊壻'],
'{M-1},f,ls':['姑妹'],
'{M-1},f,ls,h':['姑妹壻'],
'{M-1},f,xs,s':['姑男'],
'{M-1},f,xs,d':['姑女'],
'{M-1},[m&o|m&l]':['姊妹'],
'{M-1},m&o':['姊'],
'{M-1},m&l':['妹'],
'{M-1},m,f':['父'],
'{M-1},m,f,f':['祖父'],
'{M-1},m,f,m':['祖母'],
'{M-1},m,m':['母'],
'{M-1},m,m,f':['外祖父'],
'{M-1},m,m,m':['外祖母'],
'{M-1},m,[ob|lb]':['舅兄弟'],
'{M-1},m,[ob|lb],w':['舅兄弟妇'],
'{M-1},m,ob':['舅兄'],
'{M-1},m,ob,w':['舅兄妇'],
'{M-1},m,lb':['舅弟'],
'{M-1},m,lb,w':['舅弟妇'],
'{M-1},m,xb,s':['舅男'],
'{M-1},m,xb,d':['舅女'],
'{M-1},m,[os|ls]':['姨姊妹'],
'{M-1},m,[os|ls],h':['姨姊妹壻'],
'{M-1},m,os':['姨姊'],
'{M-1},m,os,h':['姨姊壻'],
'{M-1},m,ls':['姨妹'],
'{M-1},m,ls,h':['姨妹壻'],
'{M-1},m,xs,s':['姨男'],
'{M-1},m,xs,d':['姨女'],
'{M-1},xb':['男'],
'{M-1},xb,w':['妇'],
'{M-1},xb,s':['孙男'],
'{M-1},xb,s,w':['孙妇'],
'{M-1},xb,d':['孙女'],
'{M-1},xb,d,h':['孙婿'],
'{M-1},xs':['女'],
'{M-1},xs,h':['婿'],
'{M-1},xs,s':['外孙男'],
'{M-1},xs,s,w':['外孙妇'],
'{M-1},xs,d':['外孙女'],
'{M-1},xs,d,h':['外孙婿'],
'{M-2},f':['男'],
'{M-2},f,f&o':['兄'],
'{M-2},f,f&l':['弟'],
'{M-2},f,m&o':['姊'],
'{M-2},f,m&l':['妹'],
'{M-2},m':['女'],
'{M-2},m,f&o':['兄'],
'{M-2},m,f&l':['弟'],
'{M-2},m,m&o':['姊'],
'{M-2},m,m&l':['妹'],
'{M-2},xb':['孙男'],
'{M-2},xb,w':['孙妇'],
'{M-2},xs':['孙女'],
'{M-2},xs,h':['孙婿'],
};

178
src/filter.js Normal file
View File

@ -0,0 +1,178 @@
/*
* 关系数据语法说明
* 关系符 f:; m:; h:; w:; s:; d:; xb:兄弟; ob:; lb:; xs:姐妹; os:; ls:
* 修饰符 1:男性; 0:女性; &o:年长; &l:年幼; #:隔断; [a|b]:并列
*/
// 关系链缩写规则
export default [
/* 年龄 */
{//有大有小,增加不确定性
exp:/^(.+)&o([^#]+)&l/g,
str:'$1$2'
},
{//有大有小,增加不确定性
exp:/^(.+)&l([^#]+)&o/g,
str:'$1$2'
},
{//有大有小,增加不确定性
exp:/^(.+)?,o([sb])([^#]+)&l/g,
str:'$1,x$2$3'
},
{//有大有小,增加不确定性
exp:/^(.+)?,l([sb])([^#]+)&o/g,
str:'$1,x$2$3'
},
{//隔代跨越,增加不确定性
exp:/(,[ds],(.+),[ds])&[ol]/g,
str:'$1'
},
/* 兄弟姐妹 */
{//哥哥姐姐的哥哥姐姐还是自己的哥哥姐姐(年龄判断)
exp:/(,o[sb])+(,o[sb])/,
str:'$2'
},
{//弟弟妹妹的弟弟妹妹还是自己的弟弟妹妹(年龄判断)
exp:/(,l[sb])+(,l[sb])/,
str:'$2'
},
{//如果自己是男性,兄弟姐妹的兄弟就是自己的兄弟或自己
exp:/^(.*)(,[fh1])(,[olx][sb])+,[olx]b(.*)$/,
str:'$1$2,xb$4#$1$2$4'
},
{//如果自己是女性,兄弟姐妹的姐妹就是自己的姐妹或自己
exp:/^(.*)(,[mw0])(,[olx][sb])+,[olx]s(.*)$/,
str:'$1$2,xs$4#$1$2$4'
},
{//如果自己是男性,兄弟姐妹的姐妹就是自己的姐妹
exp:/(,[fh1])(,[olx][sb])+,[olx]s/g,
str:'$1,xs'
},
{//如果自己是女性,兄弟姐妹的兄弟就是自己的兄弟
exp:/(,[mw0])(,[olx][sb])+,[olx]b/g,
str:'$1,xb'
},
{//不知道性别,兄弟姐妹的兄弟是兄弟或自己
exp:/^,[olx][sb],[olx]b(.+)?$/,
str:',xb$1#$1'
},
{//不知道性别,兄弟姐妹的姐妹是姐妹或自己
exp:/^,[olx][sb],[olx]s(.+)?$/,
str:',xs$1#$1'
},
{//将复合称谓拆分
exp:/^,x([sb])$/,
str:',o$1#,l$1'
},
/* 父母 */
{//母亲的丈夫是自己的父亲
exp:/m,h/g,
str:'f'
},
{//父亲的妻子是自己的母亲
exp:/f,w/g,
str:'m'
},
{//兄弟的父母就是自己的父母
exp:/,[xol][sb](,[mf])/g,
str:'$1'
},
/* 父母的子女 */
{//父母的女儿年龄判断是姐姐还是妹妹
exp:/,[mf],d&([ol])/,
str:',$1s'
},
{//父母的儿子年龄判断是哥哥还是弟弟
exp:/,[mf],s&([ol])/,
str:',$1b'
},
{//如果自己是男性,父母的儿子是兄弟或者自己
exp:/^(.*)(,[fh1]|[xol]b),[mf],s(.*)$/,
str:'$1$2,xb$3#$1$2$3'
},
{//如果自己是女性,父母的女儿是姐妹或者自己
exp:/^(.*)(,[mw0]|[xol]s),[mf],d(.*)$/,
str:'$1$2,xs$3#$1$2$3'
},
{//如果自己是女性,父母的儿子是自己的兄弟
exp:/(,[mw0]|[xol]s),[mf],s/,
str:'$1,xb'
},
{//如果自己是男性,父母的女儿是自己的姐妹
exp:/(,[fh1]|[xol]b),[mf],d/,
str:'$1,xs'
},
{//父母的儿子是兄弟或自己
exp:/^,[mf],s(.+)?$/,
str:',xb$1#,1$1'
},
{//父母的女儿是姐妹或者自己
exp:/^,[mf],d(.+)?$/,
str:',xs$1#,0$1'
},
/* 孩子 */
{//孩子的姐妹是自己的女儿(年龄判断)
exp:/,[ds]&o,ob/g,
str:',s&o'
},
{//孩子的姐妹是自己的女儿(年龄判断)
exp:/,[ds]&o,os/g,
str:',d&o'
},
{//孩子的兄弟是自己的儿子(年龄判断)
exp:/,[ds]&l,lb/g,
str:',s&l'
},
{//孩子的兄弟是自己的儿子(年龄判断)
exp:/,[ds]&l,ls/g,
str:',d&l'
},
{//孩子的姐妹是自己的女儿
exp:/,[ds](&[ol])?,[olx]s/g,
str:',d'
},
{//孩子的兄弟是自己的儿子
exp:/,[ds](&[ol])?,[olx]b/g,
str:',s'
},
/* 夫妻 */
{//自己是女性,女儿或儿子的妈妈是自己
exp:/(,[mwd0](&[ol])?|[olx]s),[ds](&[ol])?,m/g,
str:'$1'
},
{//自己是女性,女儿或儿子的爸爸是自己的丈夫
exp:/(,[mwd0](&[ol])?|[olx]s),[ds](&[ol])?,f/g,
str:'$1,h'
},
{//自己是男性,女儿或儿子的爸爸是自己
exp:/(,[fhs1](&[ol])?|[olx]b),[ds](&[ol])?,f/g,
str:'$1'
},
{//自己是男性,女儿或儿子的妈妈是自己的妻子
exp:/(,[fhs1](&[ol])?|[olx]b),[ds](&[ol])?,m/g,
str:'$1,w'
},
{//不知道性别,子女的妈妈是妻子或自己
exp:/^,[ds],m(.+)?$/,
str:',w$1#$1'
},
{//不知道性别,子女的爸爸是丈夫或自己
exp:/^,[ds],f(.+)?$/,
str:',h$1#$1'
},
{//夫妻的孩子就是自己的孩子
exp:/,[wh](,[ds])/g,
str:'$1'
},
{//夫妻的对方是自己
exp:/,w,h|,h,w/g,
str:''
},
{//并列关系处理1 X[A|B|C]Y = XAY#X[B|C]Y
exp:/(.+)?\[([^\|]+?)\|([^\[\]]*\|[^\[\]]*)\](.+)?/g,
str:'$1$2$4#$1[$3]$4'
},
{//并列关系处理2 X[A|B]Y = XAY#XBY
exp:/(.+)?\[([^\[\]\|]+?)\|([^\[\]\|]+?)?\](.+)?/g,
str:'$1$2$4#$1$3$4'
}
];

567
src/main.js Normal file
View File

@ -0,0 +1,567 @@
// 主要关系链
export default {
'':['自己','我','俺','本人','在下'],
//并称
'[f,f|f,m|m,f],[f,m],f':['老太奶爷','祖太奶爷'],
'[f,f|f,m|m,f],[f,m],m':['老太奶奶','祖太奶奶'],
'[f,m|m,f|m,m],[f,m],f':['老太姥爷','祖太姥爷'],
'[f,m|m,f|m,m],[f,m],m':['老太姥姥','祖太姥姥'],
'[f|m],[f|m],f':['太老爷'],
'[f|m],[f|m],f,ob':['伯太老爷'],
'[f|m],[f|m],f,ob,w':['伯太老姥'],
'[f|m],[f|m],f,lb':['叔太老爷'],
'[f|m],[f|m],f,lb,w':['叔太老姥'],
'[f|m],[f|m],f,xs':['姑太老姥'],
'[f|m],[f|m],f,xs,h':['姑太老爷'],
'[f|m],[f|m],m':['太老姥'],
'[f|m],[f|m],m,xb':['舅太老爷'],
'[f|m],[f|m],m,xb,w':['舅太老姥'],
'[f|m],[f|m],m,xs':['姨太老姥'],
'[f|m],[f|m],m,xs,h':['姨太老爷'],
'[f,f|f,m|m,f],f':['太奶爷','祖奶爷'],
'[f,f|f,m|m,f],f,ob':['伯太奶爷','太伯奶爷'],
'[f,f|f,m|m,f],f,ob,w':['伯太奶奶','太伯奶奶'],
'[f,f|f,m|m,f],f,lb':['叔太奶爷','太叔奶爷'],
'[f,f|f,m|m,f],f,lb,w':['叔太奶奶','太叔奶奶'],
'[f,f|f,m|m,f],f,xs':['姑太奶奶','太姑奶奶'],
'[f,f|f,m|m,f],f,xs,h':['姑太奶爷','太姑奶爷'],
'[f,f|f,m|m,f],m':['太奶奶','祖奶奶'],
'[f,f|f,m|m,f],m,xb':['舅太奶爷','太舅奶爷'],
'[f,f|f,m|m,f],m,xb,w':['舅太奶奶','太舅奶奶'],
'[f,f|f,m|m,f],m,xs':['姨太奶奶','太姨奶奶'],
'[f,f|f,m|m,f],m,xs,h':['姨太奶爷','太姨奶爷'],
'[f,m|m,f|m,m],f':['太姥爷','祖姥爷','太毑爷'],
'[f,m|m,f|m,m],f,ob':['伯太姥爷','伯叔姥爷'],
'[f,m|m,f|m,m],f,ob,w':['伯太姥姥','太伯姥姥'],
'[f,m|m,f|m,m],f,lb':['叔太姥爷','太叔姥爷'],
'[f,m|m,f|m,m],f,lb,w':['叔太姥姥','太叔姥姥'],
'[f,m|m,f|m,m],f,xs':['姑太姥姥','太姑姥姥'],
'[f,m|m,f|m,m],f,xs,h':['姑太姥爷','太姑姥爷'],
'[f,m|m,f|m,m],m':['太姥姥','祖姥姥','太毑毑','太姥'],
'[f,m|m,f|m,m],m,xb':['舅太姥爷','太舅姥爷'],
'[f,m|m,f|m,m],m,xb,w':['舅太姥姥','太舅姥姥'],
'[f,m|m,f|m,m],m,xs':['姨太姥姥','太姨姥姥'],
'[f,m|m,f|m,m],m,xs,h':['姨太姥爷','太姨姥爷'],
'[f|m],[f|m],[f|m]':['曾祖辈','祖祖'],
'[f|m],[f|m]':['祖辈'],
'[f|m],f':['老爷'],
'[f|m],f,ob':['伯老爷'],
'[f|m],f,ob,w':['伯老姥'],
'[f|m],f,lb':['叔老爷'],
'[f|m],f,lb,w':['叔老姥'],
'[f|m],f,xs':['姑老姥'],
'[f|m],f,xs,h':['姑老爷'],
'[f|m],m':['老姥'],
'[f|m],m,xb':['舅老爷'],
'[f|m],m,xb,w':['舅老姥'],
'[f|m],m,xs':['姨老姥'],
'[f|m],m,xs,h':['姨老爷'],
'f,[f|m]':['祖父母','爷爷奶奶'],
'm,[f|m]':['外祖父母','外公外婆','姥姥姥爷'],
'[f|m]':['父母','爹娘','爹妈','爸妈','爸爸妈妈','父母亲','双亲','二亲','两亲','二老','高堂'],
'f,f,[f,xs|m,xb],s':['舅姑爷爷','舅姑爷'],
'm,f,[f,xs|m,xb],s':['舅姑姥爷'],
'[f|m],[f,xs|m,xb],s':['舅姑爸','姑舅爸'],
'[f|m],[f,xs|m,xb],s&o,w':['舅姑姆','姑舅姆'],
'[f|m],[f,xs|m,xb],s&l,w':['舅姑婶','姑舅婶'],
'[f|m],[f,xs|m,xb],d':['姑舅娘娘'],
'[f|m],m,xs,s':['两姨爸'],
'[f|m],m,xs,s&o,w':['两姨姆'],
'[f|m],m,xs,s&l,w':['两姨婶'],
'[f|m],m,xs,d':['两姨娘娘'],
'f,[ob|ob,w]':['伯父母'],
'f,[lb|lb,w]':['叔父母'],
'f,[xs|xs,h]':['姑父母'],
'm,[xb|xb,w]':['舅父母'],
'm,[xs|xs,h]':['姨父母'],
'w,[f|m]':['岳父母','岳父岳母','丈人丈母','舅姑'],
'w,f,[ob|ob,w]':['伯岳父母'],
'w,f,[lb|lb,w]':['叔岳父母'],
'w,f,[xs|xs,h]':['姑岳父母'],
'w,m,[xb|xb,w]':['舅岳父母'],
'w,m,[xs|xs,h]':['姨岳父母'],
'w,[ls|os],h':['襟兄弟'],
'h,[f|m]':['公婆','翁姑','大家官','公公婆婆','姑嫜'],
'h,f,[ob|ob,w]':['伯公婆'],
'h,f,[lb|lb,w]':['叔公婆'],
'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,[s|d]':['堂兄弟姐妹','堂姐妹兄弟','从父兄弟姐妹'],
'm,xs,[s|d]':['姨兄弟姐妹','姨姐妹兄弟','从母兄弟姐妹'],
'f,xs,[s|d]':['姑表兄弟姐妹'],
'm,xb,[s|d]':['舅表兄弟姐妹'],
'[f,xs|m,xb],s':['姑舅兄弟','舅姑兄弟'],
'[f,xs|m,xb],s&o':['姑舅哥','姑舅哥哥'],
'[f,xs|m,xb],s&l':['姑舅弟','姑舅弟弟'],
'[f,xs|m,xb],d':['姑舅姊妹','舅姑姊妹'],
'w,[f,xs|m,xb],d,h':['姑舅连襟','姑舅连桥'],
'[f,xs|m,xb],d&o':['姑舅姐','姑舅姐姐'],
'[f,xs|m,xb],d&l':['姑舅妹','姑舅妹妹'],
'[f,xs|m,xb],s,s':['姑舅儿子'],
'[f,xs|m,xb],s,d':['姑舅女儿'],
'[xb|xs],[s|d]':['侄甥'],
'xb,[s|d]':['侄子女','侄子侄女'],
'xs,[s|d]':['甥子女','外甥子女'],
'0,xb,[s|d],[s|d]':['归孙'],
'h,xs,[s|d],[s|d]':['离孙'],
'[w|s|d]':['妻儿'],
'[s|d]':['子女','儿女','小孩','孩子','孩子们','孩儿','小孩儿','宝宝','宝贝','娃','儿辈','子辈','子息','子嗣','崽','幺儿'],
'[s|d],[s|d]':['孙辈'],
's,[s|d]':['孙子女'],
'd,[s|d]':['外孙子女'],
'[s|d]#[s|d],[s|d]':['儿孙','子孙','孙息'],
'[s,w|d,h],[f|m]':['亲家','儿女亲家'],
'[s,w|d,h],f':['亲家公','亲家父','亲家翁','亲家世翁','姻翁'],
'[s,w|d,h],f,f':['太姻翁'],
'[s,w|d,h],f,m':['太姻姆'],
'[s,w|d,h],f,f,f':['太姻翁'],
'[s,w|d,h],f,f,m':['太姻姆'],
'[s,w|d,h],f,f,ob':['姻伯翁'],
'[s,w|d,h],f,f,ob,w':['姻伯姆'],
'[s,w|d,h],f,f,lb':['姻叔翁'],
'[s,w|d,h],f,f,lb,w':['姻叔母'],
'[s,w|d,h],f,f,xb,s&o':['姻家兄'],
'[s,w|d,h],f,f,xb,s&o,w':['姻家兄妇'],
'[s,w|d,h],f,f,xb,s&l':['姻家弟'],
'[s,w|d,h],f,f,xb,s&l,w':['姻家弟妇'],
'[s,w|d,h],f,f,xb,s,s':['姻家侄'],
'[s,w|d,h],f,f,xb,s,s,w':['姻家侄妇'],
'[s,w|d,h],f,ob':['姻兄'],
'[s,w|d,h],f,ob,w':['姻兄妇'],
'[s,w|d,h],f,lb':['姻弟'],
'[s,w|d,h],f,lb,w':['姻弟妇'],
'[s,w|d,h],f,xb,s':['姻侄'],
'[s,w|d,h],f,xb,s,w':['姻侄妇'],
'[s,w|d,h],m':['亲家母','亲家婆','亲家姆','亲姆','姻姆'],
'[s,w|d,h],m,ob':['姻仁兄'],
'[s,w|d,h],m,ob,w':['姻仁兄妇'],
'[s,w|d,h],m,lb':['姻仁弟'],
'[s,w|d,h],m,lb,w':['姻仁弟妇'],
'[s,w|d,h],[f|m],f':['姻太翁'],
'[s,w|d,h],[f|m],m':['姻太姆'],
// 主线
'f,f,f,f,f,f,f,f,f,f,f,f':['先祖父','先太爷','十二世祖'],
'f,f,f,f,f,f,f,f,f,f,f,m':['先祖母','先太奶'],
'f,f,f,f,f,f,f,f,f,f,f':['始祖父','始太爷','十一世祖'],
'f,f,f,f,f,f,f,f,f,f,m':['始祖母','始太奶'],
'f,f,f,f,f,f,f,f,f,f':['开祖父','开太爷','十世祖'],
'f,f,f,f,f,f,f,f,f,m':['开祖母','开太奶'],
'f,f,f,f,f,f,f,f,f':['鼻祖父','鼻太爷','九世祖'],
'f,f,f,f,f,f,f,f,m':['鼻祖母','鼻太奶'],
'f,f,f,f,f,f,f,f':['远祖父','远太爷','八世祖'],
'f,f,f,f,f,f,f,m':['远祖母','远太奶'],
'f,f,f,f,f,f,f':['太祖父','太太爷','七世祖'],
'f,f,f,f,f,f,m':['太祖母','太太奶'],
'f,f,f,f,f,f':['烈祖父','烈太爷','六世祖'],
'f,f,f,f,f,m':['烈祖母','烈太奶'],
'f,f,f,f,f':['天祖父','天太爷','五世祖'],
'f,f,f,f,m':['天祖母','天太奶'],
// 高祖辈
'f,f,f,f':['高祖父','外曾外曾外毑父','曾曾祖父','祖太公','祖太爷','高太爷','祖太翁','祖太爷爷','四世祖'],
'f,f,f,m':['高祖母','外曾外曾外毑母','曾曾祖母','祖太婆','祖太奶','高太奶','祖太姆','祖太奶奶'],
'f,f,m,f':['高外祖父','外曾外曾毑父'],
'f,f,m,m':['高外祖母','外曾外曾毑母'],
'f,m,f,f':['曾外曾祖父','外高外毑父'],
'f,m,f,m':['曾外曾祖母','外高外毑母'],
'f,m,m,f':['曾外曾外祖父','外高毑父'],
'f,m,m,m':['曾外曾外祖母','外高毑母'],
'm,f,f,f':['外高祖父','曾外曾外毑父'],
'm,f,f,m':['外高祖母','曾外曾外毑母'],
'm,f,m,f':['外高外祖父','曾外曾祖毑父'],
'm,f,m,m':['外高外祖母','曾外曾祖毑母'],
'm,m,f,f':['外曾外曾祖父','高外毑父'],
'm,m,f,m':['外曾外曾祖母','高外毑母'],
'm,m,m,f':['外曾外曾外祖父','高毑父'],
'm,m,m,m':['外曾外曾外祖母','高毑母'],
// 曾祖辈
'f,f,f':['曾祖父','曾祖','外曾外毑父','太公','太爷','老太爷','祖爷','太翁','佬嗲','太爷爷','三世祖'],
'f,f,m':['曾祖母','外曾外毑母','太婆','太奶','老太奶','太嬷','太姆','太奶奶','老娭毑'],
'f,m,f':['曾外祖父','曾外祖','外曾毑父','太外公','太外爷','太外翁','太外爷爷'],
'f,m,m':['曾外祖母','外曾毑母','太外婆','太外奶','太外嬷','太外姆','太外奶奶'],
'm,f,f':['外曾祖父','外曾祖','曾外毑父','外太公','外太爷','外太翁','外太爷爷','老外公','老外爷','老姥爷'],
'm,f,m':['外曾祖母','曾外毑母','外太婆','外太奶','外太嬷','外太姆','外太奶奶','老外婆','老外奶','老姥姥','老姥娘','老嫏娘'],
'm,m,f':['外曾外祖父','外曾外祖','曾毑父','外太外公','外太外爷','外太外翁','外太外爷爷','外太姥爷','老外公','老外爷','老姥爷'],
'm,m,m':['外曾外祖母','曾毑母','外太外婆','外太外奶','外太外嬷','外太外姆','外太外奶奶','外太姥姥','老外婆','老外奶','老姥姥','老姥娘','老嫏娘'],
// 祖父辈
'f,f':['爷爷','祖父','奶爷','阿爷','阿公','嗲嗲','依爷','爷儿','爷老','爷老子','爷老倌','爷','二世祖'],
'f,m':['奶奶','祖母','阿奶','阿姆','阿嬷','阿嫲','嫲嫲','依奶','婻婻','娭毑','嗯奶','娘姆','媪婆','亲婆','奶'],
'm,f':['外公','外祖父','姥爷','阿公','客公','外爷','舅家爷','姥公','毑父','毑爹','毑公','毑爷','嘎公','尕公'],
'm,m':['外婆','外祖母','姥姥','姥娘','姥婆','阿婆','阿嬷','阿嫲','嫲嫲','外奶','客婆','舅家婆','好婆','姥婆','毑母','毑婆','毑毑','嘎嘎','尕婆','嫏嫏','嫏娘'],
'f,f,ob':['伯公','伯祖','伯翁','大爷爷','大嗲','大爷','大公','大伯公','大阿爷'],
'f,f,ob,w':['伯婆','姆婆','大奶奶'],
'f,f,lb':['叔公','叔祖','叔翁','晚公','细嗲','小爷爷'],
'f,f,lb,w':['叔婆','婶婆','晚婆','小奶奶'],
'f,f,xb':['堂祖父','x爷爷','x大爷','x嗲','x爷','x公'],
'f,f,xb,w':['堂祖母','x奶奶','x大娘','x奶','x婆'],
'f,f,xs':['姑奶奶','祖姑'],
'f,f,xs,h':['姑爷爷','姑公公','祖姑丈','姑丈公','丈公'],
'f,m,xb':['舅爷爷','舅祖','舅爹','太舅父'],
'f,m,xb,w':['舅奶奶','妗婆','妗奶','太舅母'],
'f,m,xs':['姨奶奶','姨奶'],
'f,m,xs,h':['姨爷爷','姨公公','姨丈公','丈公'],
'm,f,ob':['伯外公','外伯祖','伯外祖','大外公','大姥爷','大外爷'],
'm,f,ob,w':['伯外婆','外姆婆','大外婆','大姥姥','大姥奶'],
'm,f,lb':['叔外公','外叔祖','叔外祖','小外公','小姥爷','小外爷'],
'm,f,lb,w':['叔外婆','外婶婆','小外婆','小姥姥','婶姥姥','小姥奶'],
'm,f,xb':['堂外祖父','x外公','x姥爷','x外爷'],
'm,f,xb,w':['堂外祖母','x外婆','x姥姥','x姥奶','x外奶','x姥'],
'm,f,xs':['姑外婆','姑婆'],
'm,f,xs,h':['姑外公','姑公','外姑丈公','外丈公'],
'm,m,xb':['舅外公','舅公','舅爹'],
'm,m,xb,w':['舅外婆','舅婆','妗姥姥','妗姥娘','妗姥','外妗婆'],
'm,m,xs':['姨外婆','姨婆'],
'm,m,xs,h':['姨外公','姨公','外姨丈公','外丈公'],
// 父辈
'f':['爸爸','父亲','老爸','阿爸','阿父','阿爹','老窦','爹地','依爹','老爹','老汉','老爷子','老子','牙老子','爸','父','爹','老汉儿','牙老倌','爸比','爹爹','爹啲','一世祖'],
'm':['妈妈','母亲','老妈','阿妈','阿母','阿娘','老母','妈咪','依妈','老娘','老乸','老妈子','妈子','娘老子','妈','母','娘','阿毑','姆嬷','姆妈','娘亲'],
'f,ob':['伯父','伯伯','阿伯','大伯','大伯爷','大伯伯','伯儿','大大','世父','大伯爸','伯爸','大爸爸','大爸','大爹','大爷'],
'f,ob,w':['伯母','伯妈','伯娘','伯妇','阿娘','依姆','姆姆','姆','世母','大娘','大妈','大妈妈','大姆妈','大嬷'],
'f,lb':['叔叔','叔父','叔爸','叔爹','阿叔','叔儿','仲父','季父','叔仔','小叔','小爹','小爸','尕爸','幺爸','幺爹','幺叔','细叔','满叔','晚叔','叔'],
'f,lb,w':['婶婶','婶母','婶娘','婶妈','婶爹','叔妇','阿婶','依婶','仲母','季母','小婶','小娘','小妈','尕婶','幺婶','细婶','满婶','晚婆','婶子','婶儿','家婶','叔母','叔妈','叔娘','婶'],
'f,[ob|lb]':['叔伯','从父','x爸爸','x爸','x爹'],
'f,os':['大姑','大姑妈','姑姊'],
'f,os,h':['大姑丈','大姑父','大姑爸'],
'f,ls':['小姑','小姑妈','姑姐','姑妹','姑仔','尕娘','幺姑','幺姑姐','老姑','细姑','满姑'],
'f,ls,h':['小姑丈','小姑父','小姑爹','老姑夫'],
'f,xs':['姑妈','姑母','姑姑','嬢嬢','娘娘','姑','阿姑'],
'f,xs,h':['姑丈','姑父','姑爸','姑爹','姑夫','姑婿','亘'],
'm,ob':['大舅','大舅舅','元舅'],
'm,ob,w':['大舅妈','大妗'],
'm,lb':['小舅','小舅舅','舅仔','舅父仔','幺舅','老舅','细舅','满舅','尕阿舅'],
'm,lb,w':['小舅妈','小妗','细妗'],
'm,xb':['舅舅','舅父','舅爸','舅爹','娘舅','母舅','舅','阿舅','妗公'],
'm,xb,w':['舅妈','舅母','舅妻','舅姆','舅姆妈','舅媳妇','舅妇','舅姥','妗','妗子','妗妗','妗妈','妗娘','妗母','阿妗','妗门','妗婆仔','妗儿妈'],
'm,os':['大姨','大姨妈'],
'm,os,h':['大姨丈','大姨父','大姨爸'],
'm,ls':['小姨','小姨妈','姨仔','幺姨','老姨','满姨','细姨','尕姨娘'],
'm,ls,h':['小姨丈','小姨父','小姨爹','老姨夫'],
'm,xs':['姨妈','姨母','姨姨','姨娘','阿姨','姨','从母'],
'm,xs,h':['姨丈','姨父','姨爸','姨爹','姨夫','姨婿','姨郎','尹'],
'f,f,xb,s&o':['堂伯'],
'f,f,xb,s&o,w':['堂伯母'],
'f,f,xb,s&l':['堂叔'],
'f,f,xb,s&l,w':['堂婶'],
'f,f,xb,[s&o|s&d]':['堂叔伯'],
'f,f,xb,d':['堂姑'],
'f,f,xb,d,h':['堂姑丈'],
'm,f,xb,s':['堂舅'],
'm,f,xb,s,w':['堂舅妈'],
'm,f,xb,d':['堂姨'],
'm,f,xb,d,h':['堂姨丈'],
// 同辈
'f,xb,s&o':['堂哥','堂阿哥','堂房哥哥','堂房阿哥','叔伯哥哥','叔伯阿哥','堂老兄'],
'f,xb,s&o,w':['堂嫂','堂兄嫂'],
'f,xb,s&l':['堂弟','堂阿弟','堂房弟弟','堂房阿弟','叔伯弟弟','叔伯老弟','堂老弟'],
'f,xb,s&l,w':['堂弟媳','堂弟妇','堂弟妹'],
'f,xb,d&o':['堂姐','堂阿姐','堂房姐姐','堂房阿姐','叔伯姐姐','叔伯阿姊','堂大姐'],
'f,xb,d&o,h':['堂姐夫'],
'f,xb,d&l':['堂妹','堂阿妹','堂房妹妹','堂房阿妹','叔伯妹妹','叔伯老妹','堂细妹'],
'f,xb,d&l,h':['堂妹夫'],
// 婆家
'h,f,f,f':['曾祖公父','曾祖公','太公翁'],
'h,f,f,m':['曾祖婆母','曾祖婆','太奶亲'],
'h,f,m,f':['曾外祖公父','曾外祖公'],
'h,f,m,m':['曾外祖婆母','曾外祖婆'],
'h,m,f,f':['外曾祖公父','外曾祖公'],
'h,m,f,m':['外曾祖婆母','外曾祖婆'],
'h,m,m,f':['外曾外祖公父','外曾外祖公'],
'h,m,m,m':['外曾外祖婆母','外曾外祖婆'],
'h,f,f,f,ob':['伯曾祖公父','伯曾祖公','太伯翁'],
'h,f,f,f,ob,w':['伯曾祖婆母','伯曾祖婆','太姆婆'],
'h,f,f,f,lb':['叔曾祖公父','叔曾祖公','太叔翁'],
'h,f,f,f,lb,w':['叔曾祖婆母','叔曾祖婆','太婶婆'],
'h,f,f,f,xs':['姑曾祖婆母','姑曾祖婆'],
'h,f,f,f,xs,h':['姑曾祖公父','姑曾祖婆'],
'h,f,f':['祖公父','祖公','祖公公','祖翁','奶公父'],
'h,f,m':['祖婆母','祖婆','祖婆婆','奶婆母'],
'h,m,f':['外祖公父','毑公父','外祖公','外祖公公','姥公父','姥公'],
'h,m,m':['外祖婆母','毑婆母','外祖婆','外祖婆婆','姥婆母','姥婆'],
'h,f':['公公','公父','家公','家官','家翁','家爷','翁亲','老官','大官','老公公','老人公','大人公','公爹','老公爹','婆父','婆爹'],
'h,m':['婆婆','婆母','家婆','家娘','姑亲','大家','老婆婆','老人婆','大人婆','婆妈','婆母娘','婆子妈'],
'h,f,ob':['伯公父','伯公','伯翁','伯公公','婆婆伯'],
'h,f,ob,w':['伯婆母','伯婆','姆婆','伯婆婆','伯姆','婆婆伯姆'],
'h,f,lb':['叔公父','叔公','叔翁','叔公公','叔祖','婆婆叔'],
'h,f,lb,w':['叔婆母','叔婆','婶婆','婶婆婆','婶亲','婆婆婶子'],
'h,f,xs':['姑婆母','姑婆','姑婆婆','婆婆姑'],
'h,f,xs,h':['姑公父','姑公','姑公公','婆婆姑夫'],
'h,m,xb':['舅公父','舅公','舅公公'],
'h,m,xb,w':['舅婆母','舅婆','妗婆婆','舅婆婆'],
'h,m,xs':['姨婆母','姨婆','姨婆婆'],
'h,m,xs,h':['姨公父','姨公','姨公公'],
'h':['老公','丈夫','先生','官人','男人','汉子','夫','夫君','相公','夫婿','良人','老头子','老公仔','爱人','老伴','那口子','配偶','伴侣','伉俪','卿卿'],
'h,ob':['大伯子','大伯儿','大伯兄','伯子','伯爷子'],
'h,ob,w':['大婶子','大婶儿','大叔兄妇','伯嫂','姒妇','姒姆','大伯嫂','大伯妇','大伯娘'],
'h,lb':['小叔子','小叔儿','小叔弟','叔子'],
'h,lb,w':['小婶子','小婶儿','小叔弟妇','叔嫂','娣妇','娣姆','小叔妇','小婶'],
'h,xb':['伯叔'],
'h,xb,w':['妯娌','娣姒','娣姒姊妹','婶子'],
'h,xb,s':['叔侄','叔侄男','叔男'],
'h,xb,d':['叔侄女','叔女'],
'h,xb,s,s':['叔侄孙','叔孙','叔侄孙男','叔孙男'],
'h,xb,s,d':['叔侄孙女','叔孙女'],
'h,xb,d,s':['叔侄外孙','叔外孙','叔侄外孙男','叔外孙男'],
'h,xb,d,d':['叔侄外孙女','叔外孙女'],
'h,os':['大姑子','大姑姐','大姑儿','大姑娘','大娘姑','婆姐','婆婆姐'],
'h,os,h':['大姑夫','大姑姐夫','大亘子','婆姐夫','婆婆姐夫'],
'h,ls':['小姑子','小姑妹','小姑儿','小姑娘','婆妹','婆婆妹'],
'h,ls,h':['小姑夫','小姑妹夫','小亘子','婆妹夫','婆婆妹夫'],
'h,xs':['姑子','夫姑'],
'h,xs,h':['姑夫','姑郎'],
'h,xs,s':['姑甥','姑甥男','姑男'],
'h,xs,d':['姑甥女','姑女'],
'h,xs,s,s':['姑甥孙','姑孙','姑甥孙男','姑孙男'],
'h,xs,s,d':['姑甥孙女','姑孙女'],
'h,xs,d,s':['姑甥外孙','姑外孙','姑外孙男','姑外孙男'],
'h,xs,d,d':['姑甥外孙女','姑外孙女'],
// 岳家
'w,f,f,f':['曾祖岳父','曾祖丈人','太爷丈人','祖爷丈人'],
'w,f,f,m':['曾祖岳母','曾祖丈母','曾祖丈母娘','祖奶丈母娘','太奶丈母娘'],
'w,f,m,f':['曾外祖岳父','曾外祖丈人','祖姥爷丈人','太姥爷丈'],
'w,f,m,m':['曾外祖岳母','曾外祖丈母','曾外祖丈母娘','祖姥丈母娘','太姥丈母娘'],
'w,m,f,f':['外曾祖岳父','外曾祖丈人','祖奶爷丈人','太奶爷丈人','祖姥爷丈人','太姥爷丈人'],
'w,m,f,m':['外曾祖岳母','外曾祖丈母','太奶丈母娘','祖姥丈母娘','太姥丈母娘'],
'w,m,m,f':['外曾外祖岳父','外曾外祖丈人','祖姥爷丈人','太姥爷丈人'],
'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':['岳父','岳丈','岳老子','老干爷','老丈人','丈母爷','老丈杆子','丈人爹','丈爷爹','岳翁','丈人','丈人公','丈父','丈爷','外父','妻父','泰山','外舅','老亲爷'],
'w,m':['岳母','丈母娘','丈姥娘','岳母娘','老干娘','老丈母','丈人娘','丈人婆','丈母','丈母婆','丈姆','丈姆婆','丈姥','外母','泰水','外姑','老亲娘'],
'w':['老婆','妻子','太太','媳妇儿','媳妇','夫人','女人','婆娘','妻','内人','内子','娘子','爱妻','发妻','老太婆','婆子','老婆子','老婆儿','老婆仔','堂客','爱人','老伴','那口子','配偶','伴侣','伉俪','卿卿'],
'w,ob':['大舅子','大舅哥','大舅佬','大阿舅','舅哥'],
'w,ob,w':['大舅妇','大舅姆','大舅兄嫂','大舅嫂','大舅姐','大舅媳妇','大妗子','大妗儿'],
'w,lb':['小舅子','小舅弟','小舅佬','小阿舅','舅弟'],
'w,lb,w':['小舅妇','小舅姆','小舅弟妇','小舅嫂','舅弟媳','小舅妹','小舅媳妇','小妗子','小妗儿'],
'w,xb':['舅子','舅佬','妻舅','老婆舅','阿舅','亲家舅'],
'w,xb,w':['舅嫂','妻妗','妗仔','妗子','妗儿'],
'w,xb,s':['舅侄','舅侄男','舅男'],
'w,xb,d':['舅侄女','舅女'],
'w,xb,s,s':['舅侄孙','舅孙','舅侄孙男','舅孙男'],
'w,xb,s,d':['舅侄孙女','舅孙女'],
'w,xb,d,s':['舅侄外孙','舅外孙','舅侄外孙男','舅外孙男'],
'w,xb,d,d':['舅侄外孙女','舅外孙女'],
'w,os':['大姨子','大姨姐','大姨儿','姨姐'],
'w,os,h':['大姨夫','大姨姐夫','襟兄','大尹子'],
'w,ls':['小姨子','小姨妹','小茙儿','姨妹','姨仔','姨妹子'],
'w,ls,h':['小姨夫','小姨妹夫','小茙夫','襟弟','小尹子'],
'w,xs':['姨子','妻姨'],
'w,xs,h':['连襟','连桥','两桥','姨夫','姨夫爷','一担挑','老挑','挑担','担儿挑','连襟儿','妻尹','娅'],
'w,xs,s':['姨甥','姨甥男','姨男'],
'w,xs,d':['姨甥女','姨女'],
'w,xs,s,s':['姨甥孙','姨孙','姨甥孙男','姨孙男'],
'w,xs,s,d':['姨甥孙女','姨孙女'],
'w,xs,d,s':['姨甥外孙','姨外孙','姨外孙男','姨外孙男'],
'w,xs,d,d':['姨甥外孙女','姨外孙女'],
// 兄弟
'ob':['哥哥','哥','胞哥','亲哥','老哥','阿哥','兄长','大佬','依哥'],
'ob,w':['嫂子','嫂','嫂嫂','兄姊','兄嫂','兄妇','兄妻','阿嫂'],
'lb':['弟弟','弟','胞弟','亲弟','老弟','阿弟','细佬','依弟','小弟','幺弟','细弟','满弟'],
'lb,w':['弟妹','弟媳','弟媳妇','弟媳妇子','弟新妇','老弟嫂'],
'1,xb,w,xb':['叔眷兄弟'],
'1,xb,w,xb,s':['叔眷舅男'],
'1,xb,w,xb,d':['叔眷舅女'],
'1,xb,w,xs':['叔眷姊妹'],
'1,xb,w,xs,s':['叔眷姨男'],
'1,xb,w,xs,d':['叔眷姨女'],
'0,xb,w,xb':['舅眷兄弟'],
'0,xb,w,xb,s':['舅眷舅男'],
'0,xb,w,xb,d':['舅眷舅女'],
'0,xb,w,xs':['舅眷姊妹'],
'0,xb,w,xs,s':['舅眷姨男'],
'0,xb,w,xs,d':['舅眷姨女'],
'xb,s':['侄子','侄男','侄儿','阿侄','侄','侄仔'],
'xb,s,w':['侄媳妇','侄嫂','侄妇'],
'xb,d':['侄女','侄囡','侄女儿','侄闺女'],
'xb,d,h':['侄女婿','侄婿'],
'0,xb,s':['娘家侄子','娘家侄'],
'0,xb,d':['娘家侄女'],
'1,xb,s':['从男','从子'],
'1,xb,s,w':['从妇'],
'1,xb,d':['从女','从子'],
'1,xb,d,h':['从婿'],
// 姐妹
'os':['姐姐','姐','胞姐','亲姐','阿姐','姊仔','家姐','依姐'],
'os,h':['姐夫','姐丈','姐婿','姐郎','姊兄','姐夫哥','胞姐夫'],
'ls':['妹妹','妹','胞妹','亲妹','阿妹','妹儿','妹子','依妹','幺妹','细妹','满妹'],
'ls,h':['妹夫','妹丈','妹婿','妹郎','妹弟','妹夫子','胞妹夫'],
'1,xs,h,xb':['姑姻兄弟'],
'1,xs,h,xb,s':['姑姻叔男'],
'1,xs,h,xb,d':['姑姻叔女'],
'1,xs,h,xs':['姑姻姊妹'],
'1,xs,h,xs,s':['姑姻姑男'],
'1,xs,h,xs,d':['姑姻姑女'],
'0,xs,h,xb':['姨姻兄弟'],
'0,xs,h,xb,s':['姨姻叔男'],
'0,xs,h,xb,d':['姨姻叔女'],
'0,xs,h,xs':['姨姻姊妹'],
'0,xs,h,xs,s':['姨姻姑男'],
'0,xs,h,xs,d':['姨姻姑女'],
'xs,s':['外甥','外甥男','外甥儿','外甥子','外甥儿子'],
'xs,s,w':['外甥媳妇','甥嫂'],
'xs,s,s':['甥孙','远甥','弥甥'],
'xs,s,d':['甥孙女','远甥女','弥甥女'],
'xs,d':['外甥女','外甥囡','外甥女儿','外甥闺女'],
'xs,d,h':['外甥女婿','甥婿'],
'0,xs,s':['姨甥','姨甥男','从男','从子'],
'0,xs,s,w':['从妇'],
'0,xs,d':['姨甥女','从女','从子'],
'0,xs,d,h':['从婿'],
'0,xs,s,s':['姨甥孙','姨孙','姨甥孙男','姨孙男'],
'0,xs,s,d':['姨甥孙女','姨孙女'],
'0,xs,d,s':['姨甥外孙','姨外孙','姨甥外孙男','姨外孙男'],
'0,xs,d,d':['姨甥外孙女','姨外孙女'],
// 堂表亲
'f,xb,s,s':['堂侄'],
'f,xb,s,s,w':['堂侄媳妇'],
'f,xb,s,d':['堂侄女'],
'f,xb,s,d,h':['堂侄女婿'],
'f,xb,d,s':['堂外甥'],
'f,xb,d,s,w':['堂外甥媳妇'],
'f,xb,d,d':['堂外甥女'],
'f,xb,d,d,h':['堂外甥女婿'],
// 子辈
's':['儿子','男儿','息男','闺男','囝囝','囝男','小子','娃子','男亲','长子','次子','幼子','儿','仔','子','阿仔','仔仔','后生','一世孙'],
's,w':['儿媳','儿媳妇','儿媳妇儿','新妇','新妇囝','心抱','息妇','儿妇','子妇','小妇','息妇儿'],
's,w,f':['亲家公'],
's,w,m':['亲家母'],
's,s':['孙子','孙男','孙男儿','孙儿','长孙','孙娃子','孙伢子','二世孙'],
's,s,w':['孙媳妇','孙媳','孙妇','孙息妇','孙新妇'],
's,s,s':['曾孙','曾孙男','重孙','重孙子','息仔','三世孙'],
's,s,s,w':['曾孙妇','重孙媳妇'],
's,s,s,s':['玄孙','元孙','膀孙','四世孙'],
's,s,s,s,w':['玄孙媳妇'],
's,s,s,s,s':['来孙','五世孙'],
's,s,s,s,s,w':['来孙媳妇'],
's,s,s,s,s,s':['晜孙','六世孙'],
's,s,s,s,s,s,w':['晜孙媳妇'],
's,s,s,s,s,s,s':['仍孙','礽孙','七世孙'],
's,s,s,s,s,s,s,w':['仍孙媳妇'],
's,s,s,s,s,s,s,s':['云孙','八世孙'],
's,s,s,s,s,s,s,s,w':['云孙媳妇'],
's,s,s,s,s,s,s,s,s':['耳孙','远孙','九世孙'],
's,s,s,s,s,s,s,s,s,w':['耳孙媳妇'],
's,s,s,s,s,s,s,s,s,s':['弥孙','十世孙'],
's,s,s,s,s,s,s,s,s,s,w':['弥孙媳妇'],
's,s,s,s,s,s,s,s,s,s,s':['胎孙','十一世孙'],
's,s,s,s,s,s,s,s,s,s,s,w':['胎孙媳妇'],
's,s,s,s,s,s,s,s,s,s,s,s':['承孙','十二世孙'],
's,s,s,s,s,s,s,s,s,s,s,s,w':['承孙媳妇'],
's,s,s,s,s,s,s,s,s,s,s,d':['承孙女'],
's,s,s,s,s,s,s,s,s,s,s,d,h':['承孙女婿'],
's,s,s,s,s,s,s,s,s,s,d':['胎孙女'],
's,s,s,s,s,s,s,s,s,s,d,h':['胎孙女婿'],
's,s,s,s,s,s,s,s,s,s,d,s':['承外孙'],
's,s,s,s,s,s,s,s,s,s,d,s,w':['承外孙媳妇'],
's,s,s,s,s,s,s,s,s,s,d,d':['承外孙女'],
's,s,s,s,s,s,s,s,s,s,d,d,h':['承外孙女婿'],
's,s,s,s,s,s,s,s,s,d':['弥孙女'],
's,s,s,s,s,s,s,s,s,d,h':['弥孙女婿'],
's,s,s,s,s,s,s,s,s,d,s':['胎外孙'],
's,s,s,s,s,s,s,s,s,d,s,w':['胎外孙媳妇'],
's,s,s,s,s,s,s,s,s,d,d':['胎外孙女'],
's,s,s,s,s,s,s,s,s,d,d,h':['胎外孙女婿'],
's,s,s,s,s,s,s,s,d':['耳孙女'],
's,s,s,s,s,s,s,s,d,h':['耳孙女婿'],
's,s,s,s,s,s,s,s,d,s':['弥外孙'],
's,s,s,s,s,s,s,s,d,s,w':['弥外孙媳妇'],
's,s,s,s,s,s,s,s,d,d':['弥外孙女'],
's,s,s,s,s,s,s,s,d,d,h':['弥外孙女婿'],
's,s,s,s,s,s,s,d':['云孙女'],
's,s,s,s,s,s,s,d,h':['云孙女婿'],
's,s,s,s,s,s,s,d,s':['耳外孙'],
's,s,s,s,s,s,s,d,s,w':['耳外孙媳妇'],
's,s,s,s,s,s,s,d,d':['耳外孙女'],
's,s,s,s,s,s,s,d,d,h':['耳外孙女婿'],
's,s,s,s,s,s,d':['仍孙女','礽孙女'],
's,s,s,s,s,s,d,h':['仍孙女婿'],
's,s,s,s,s,s,d,s':['云外孙'],
's,s,s,s,s,s,d,s,w':['云外孙媳妇'],
's,s,s,s,s,s,d,d':['云外孙女'],
's,s,s,s,s,s,d,d,h':['云外孙女婿'],
's,s,s,s,s,d':['晜孙女'],
's,s,s,s,s,d,h':['晜孙女婿'],
's,s,s,s,s,d,s':['仍外孙'],
's,s,s,s,s,d,s,w':['仍外孙媳妇'],
's,s,s,s,s,d,d':['仍外孙女'],
's,s,s,s,s,d,d,h':['仍外孙女婿'],
's,s,s,s,d':['来孙女'],
's,s,s,s,d,h':['来孙女婿'],
's,s,s,s,d,s':['晜外孙'],
's,s,s,s,d,s,w':['晜外孙媳妇'],
's,s,s,s,d,d':['晜外孙女'],
's,s,s,s,d,d,h':['晜外孙女婿'],
's,s,s,d':['玄孙女','元孙女','膀孙女'],
's,s,s,d,h':['玄孙女婿'],
's,s,s,d,s':['来外孙'],
's,s,s,d,s,w':['来外孙媳妇'],
's,s,s,d,d':['来外孙女'],
's,s,s,d,d,h':['来外孙女婿'],
's,s,d':['曾孙女','重孙女','息女'],
's,s,d,h':['曾孙女婿'],
's,s,d,s':['玄外孙'],
's,s,d,s,w':['玄外孙媳妇'],
's,s,d,d':['玄外孙女'],
's,s,d,d,h':['玄外孙女婿'],
's,d':['孙女','孙女儿','孙囡','孙囡儿','女孙','孙女子'],
's,d,h':['孙女婿','孙婿','孙息婿'],
's,d,s':['曾外孙','外息仔'],
's,d,s,w':['曾外孙媳妇'],
's,d,s,s':['曾外曾孙'],
's,d,s,s,w':['曾外曾孙媳妇'],
's,d,s,d':['曾外曾孙女'],
's,d,s,d,h':['曾外曾孙女婿'],
's,d,d':['曾外孙女','外息女'],
's,d,d,h':['曾外孙女婿'],
's,d,d,s':['曾外曾外孙'],
's,d,d,s,w':['曾外曾外孙媳妇'],
's,d,d,d':['曾外曾外孙女'],
's,d,d,d,h':['曾外曾外孙女婿'],
'd':['女儿','千金','掌上明珠','息女','闺女','囡女','乖囡','囡囡','囡嗯','囡儿','丫头','姑娘','妮子','女亲','长女','次女','幼女','女','阿女','女女'],
'd,h':['女婿','姑爷','姑爷儿','女婿子','女婿儿','儿婿','子婿','息婿','小婿','郎婿','郎婿子','息婿儿','囝婿','囡婿','东床','半子'],
'd,h,f':['亲家公'],
'd,h,m':['亲家母'],
'd,s':['外孙','外孙子','外孙儿'],
'd,s,w':['外孙媳妇','外孙妇','外孙新妇'],
'd,s,s':['外曾孙','重外孙','外息仔'],
'd,s,s,w':['外曾孙媳妇','外曾孙妇'],
'd,s,s,s':['外玄孙','外元孙','外膀孙'],
'd,s,s,s,w':['外玄孙媳妇'],
'd,s,s,d':['外玄孙女','外元孙女','外膀孙女'],
'd,s,s,d,h':['外玄孙女婿'],
'd,s,d':['外曾孙女','重外孙女','外息女'],
'd,s,d,h':['外曾孙女婿','重外孙女婿'],
'd,s,d,s':['外玄外孙'],
'd,s,d,s,w':['外玄外孙媳妇'],
'd,s,d,d':['外玄外孙女'],
'd,s,d,d,h':['外玄外孙女婿'],
'd,d':['外孙女','外孙囡','外孙女儿'],
'd,d,h':['外孙女婿','外孙婿'],
'd,d,s':['外曾外孙','外息仔'],
'd,d,s,w':['外曾外孙媳妇'],
'd,d,s,s':['外曾外曾孙'],
'd,d,s,s,w':['外曾外曾孙媳妇'],
'd,d,s,d':['外曾外曾孙女'],
'd,d,s,d,h':['外曾外曾孙女婿'],
'd,d,d':['外曾外孙女','外息女'],
'd,d,d,h':['外曾外孙女婿'],
'd,d,d,s':['外曾外曾外孙'],
'd,d,d,s,w':['外曾外曾外孙媳妇'],
'd,d,d,d':['外曾外曾外孙女'],
'd,d,d,d,h':['外曾外曾外孙女婿'],
};

67
src/map.js Normal file
View File

@ -0,0 +1,67 @@
import _main from './main';
import _prefix from './prefix';
import _branch from './branch';
var _map = {}; // 默认映射关系
// 分支关系
for(var key in _branch){
var tag = key.match(/\{.+?\}/)[0];
var nameList = _branch[key];
for(var k in _prefix[tag]){
var prefixList = _prefix[tag][k];
var newKey = key.replace(tag,k);
var isFilter = ['h,h','w,w','w,h','h,w'].some(pair=>(newKey.indexOf(pair)>-1));
var newList = [];
if(!isFilter){
prefixList.forEach(function(prefix){
nameList.forEach(function(name){
if(name.indexOf('?')>-1){
newList.push(name.replace('?',prefix));
}else{
newList.push(prefix+name);
}
});
});
_map[newKey] = [].concat(_map[newKey]||[],newList);
}
}
}
// 主要关系
for(var key in _main){
_map[key] = [].concat(_main[key],_map[key]||[]);
}
_map['o']=['passer-by.com','\u4f5c\u8005'];
// 配偶关系
var branch = {
'w':['妻','内','岳','岳家','丈人'],
'h':['夫','外','公','婆家','婆婆'],
};
var allName = {};
for(var key in _map){
_map[key].forEach(function(name){
allName[name]=true;
});
}
for(var key in _map){
if(key.match(/^[fm]/)||key.match(/^[olx][bs]$|^[olx][bs],[^mf]/)){
for(var k in branch){
var newKey = k+','+key;
if(!_map[newKey]){
_map[newKey] = [];
}
var prefixList = branch[k];
var nameList = _map[key];
prefixList.forEach(function(prefix){
nameList.forEach(function(name){
var newName = prefix+name;
if(!allName[newName]){ // 配偶组合的称呼不得已原有称呼冲突(如:妻舅!=妻子的舅舅;外舅公!=老公的舅公)
_map[newKey].push(newName);
}
});
});
}
}
}
export default _map;

385
src/method.js Normal file
View File

@ -0,0 +1,385 @@
import _filter from './filter';
import _map from './map';
var _mode = {}; // 模式数据
var _data = Object.assign({},_map); // 最终数据
// 数组去重
export function unique(arr){
var sameList = arr.filter(item=>item==item.replace(/[ol](?=s|b)/,'x').replace(/&[ol]/,''));
return arr.filter(item=>{
var temp = item.replace(/[ol](?=s|b)/,'x').replace(/&[ol]/,'');
return sameList.indexOf(item)>-1||item!=temp&&sameList.indexOf(temp)==-1;
}).filter((item,idx,arr) => arr.indexOf(item) === idx);
};
// 中文获取选择器
export function getSelectors(str){
str = str.replace(/之/,'的').replace(/我的?(.+)/,'$1');
if(str.match(/[^娘婆岳亲]家的?/)){
str = str.replace(/家的?/,'的');
}
var lists = str.split('的');
var result = [];
var isMatch = true;
// 双向替换
var replaceMap = {
'晜':'兄',
'哥':'兄',
'姐':'姊',
'侄':'姪',
'婿':'壻',
'祖父':'王父',
'祖母':'王母',
'弟媳':'弟妇',
'嫂':'兄妇',
'孙女婿':'孙婿',
'甥女婿':'甥婿',
'侄女婿':'侄婿',
'孙媳妇':'孙妇',
'甥媳妇':'甥妇',
'侄媳妇':'侄妇',
};
// 含义扩展
var replaceFilter = {
'^从表':['从父姑表','从父舅表','从父姨表','从母姑表','从母舅表','从母叔表'],
'^表表':['姑表叔表','姑表姑表','姑表舅表','姑表姨表','舅表叔表','舅表姑表','舅表舅表','舅表姨表'],
'^([夫妻]?)表':['$1姑表','$1舅表','$1姑表伯','$1姑表叔','$1舅表伯','$1舅表叔'],
'^([姑舅])表(?=[^伯叔])':['$1表伯','$1表叔'],
'^姻':['姑姻','姨姻','姊妹姻','女姻'],
'^眷':['叔眷','舅眷','兄弟眷','男眷'],
'^亲家':['姊妹姻','兄弟眷'],
'^([堂表姨]?)([曾高天烈太远鼻]?)(祖?)([伯叔姑舅姨])':['$1$4$2$3'],
'^([曾玄来晜仍云耳])([侄甥])':['$2$1'],
'^外表([伯叔姑舅姨])':['姑表$1外','舅表$1外'],
'^([堂表姨]?)外甥':['$1甥'],
'^([舅叔])([曾玄外]*)孙':['$1侄$2孙'],
'^([姨姑])([曾玄外]*)孙':['$1甥$2孙'],
'([孙甥侄])$':['$1男','$1女'],
'([姑舅姨叔])([孙外]*)([男女])$':['$1表侄$2$3','$1表甥$2$3'],
'祖$':['祖父','祖母'],
'嫂$':['兄妇'],
'女儿$':['女'],
'外甥$':['甥'],
};
while(lists.length){
var name = lists.shift(); //当前匹配词
var items = []; //当前匹配词可能性
var x_items = [];
var r_items = [];
var keywords = [name];
var getList = function(name){
for(var filter in replaceFilter){
var word_list = replaceFilter[filter];
word_list.forEach(function(word){
var name1 = name.replace(new RegExp(filter),word);
if(name1!=name){
keywords.push(name1);
getList(name1);
}
});
}
for(var word in replaceMap){
var name1 = name.replace(word,replaceMap[word]);
var name2 = name.replace(replaceMap[word],word);
if(name1!=name){
keywords.push(name1);
}
if(name2!=name){
keywords.push(name2);
}
}
};
getList(name);
// 通过关键词找关系
keywords.forEach(function(name){
var x_name = name.replace(/^[大|小|老]|^[一|二|三|四|五|六|七|八|九|十]{1,2}/,'x');
var r_name = name.replace(/^[大|小|老]|^[一|二|三|四|五|六|七|八|九|十]{1,2}/,'');
for(var i in _data){
if(_data[i].indexOf(name)>-1){
items.push(i);
}
if(name!=x_name&&_data[i].indexOf(x_name)>-1){
x_items.push(i);
}
if(name!=r_name&&_data[i].indexOf(r_name)>-1){
if(!i.match(/^[mf,]+$/)&&!r_name.match(/^[从世]/)){ // 直系祖辈不参与排序
r_items.push(i);
}
}
}
});
// console.log('[keywords]',keywords);
// 如找不到结果,再是否存在称呼的排行问题(不直接判断,因存在"大舅""三从父兄""三世祖"这样特俗含义的情况)
if(!items.length){
items = x_items;
}
if(!items.length){
items = r_items;
}
// 完全匹配不到结果
if(!items.length){
isMatch = false;
}
var res = [];
if(!result.length){
result = [''];
}
result.forEach(function(a){
items.forEach(function(b){
res.push(a+(b?','+b:''));
});
});
result = res;
}
return isMatch?result:[];
};
// 选择器转ID
export function selector2id(selector,sex){
var result = [];
var hash = {};
//性别判断
if(sex<0){
if(selector.match(/^,[w1]/)){
sex = 1;
}else if(selector.match(/^,[h0]/)){
sex = 0;
}
}else if(sex==1&&selector.match(/^,[h0]/)){
return false;
}else if(sex==0&&selector.match(/^,[w1]/)){
return false;
}
// console.log('[selector]',selector);
var getId = function(selector,sex){
if(sex>-1&&selector.indexOf(',1')==-1&&selector.indexOf(',0')==-1){
selector = ','+sex+selector;
}
if(selector.match(/,[mwd0](&[ol])?,w|,[hfs1](&[ol])?,h/)){ //同志关系去除
return false;
}
var s='';
if(!hash[selector]){
hash[selector] = true;
do{
s = selector;
for(var i in _filter){
var item = _filter[i];
// console.log('[filter]',item['exp'],selector);
selector = selector.replace(item['exp'],item['str']);
if(selector.indexOf('#')>-1){
selector.split('#').forEach(getId);
return false;
}
}
}while(s!=selector);
if(selector.match(/,[mwd0](&[ol])?,w|,[hfs1](&[ol])?,h/)){ //同志关系去除
return false;
}
selector = selector.replace(/,[01]/,'').substr(1); //去前面逗号和性别信息
result.push(selector);
}
}
getId(selector,sex);
return unique(result);
};
// 通过ID获取数据
export function getItemsById(id){
var items = [];
var getData = function(d){
var res = [];
if(_data[d]){
res.push(_data[d][0]);
}else{
for(var i in _data){
if(i.replace(/&[ol]/g,'')==d){
res.push(_data[i][0]);
}else{
var expr = d;
while (expr.match(/[ol](b|s)/)){
expr = expr.replace(/[ol](b|s)/,'x$1');
if(expr==i){
res.push(_data[i][0]);
break;
}
}
}
}
}
return res;
};
if(_data[id]){ // 直接匹配称呼
items.push(_data[id][0]);
}else{
items = getData(id);
// 忽略年龄条件查找
if(!items.length){
id = id.replace(/&[ol]/g,'');
items = getData(id);
}
// 忽略年龄条件查找
if(!items.length){
id = id.replace(/[ol](b|s)/g,'x$1');
items = getData(id);
}
// 缩小访问查找
if(!items.length){
var l = id.replace(/x/g,'l');
var o = id.replace(/x/g,'o');
items = items.concat(getData(o),getData(l));
}
}
return items;
};
// 逆转ID
export function reverseId(id,sex){
var hash = {
f:['d','s'],
m:['d','s'],
h:['w',''],
w:['','h'],
s:['m','f'],
d:['m','f'],
lb:['os','ob'],
ob:['ls','lb'],
xb:['xs','xb'],
ls:['os','ob'],
os:['ls','lb'],
xs:['xs','xb']
};
var age = '';
if(id.match(/&o$/)){
age = '&l';
}else if(id.match(/&l$/)){
age = '&o';
}
if(id){
id = id.replace(/&[ol]/g,'');
//性别判断
if(sex<0){
if(id.match(/^w/)){
sex = 1;
}else if(id.match(/^h/)){
sex = 0;
}
}
var result = [];
var doing = function(sex){
var sid = (','+sex+','+id).replace(/,[fhs]|,[olx]b/g,',1').replace(/,[mwd]|,[olx]s/g,',0');
sid = sid.substring(0,sid.length-2);
var id_arr = id.split(',').reverse();
var sid_arr = sid.split(',').reverse();
var arr = id_arr.map((id,i)=>hash[id][sid_arr[i]]);
var g = 0;
var gMap = {'f':1,'m':1,'s':-1,'d':-1};
arr.forEach(function(r){
g += gMap[r]||0;
});
return arr.join(',')+(g?'':age);
};
if(sex<0){
result.push(doing(1));
result.push(doing(0));
}else{
result.push(doing(sex));
}
return result;
}
return [''];
};
// 通过ID获取关系链条
export function getChainById(id){
var arr = id.split(',');
return arr.map(function(sign){
var key = sign.replace(/&[ol]/,'');
var data = Object.assign({},_data,{
'xb':['兄弟'],
'xs':['姐妹'],
});
return data[key][0];
}).join('的');
};
// 合并选择器,查找两个对象之间的关系
export function mergeSelector(from,to,my_sex){
if(my_sex<0){
var to_sex = -1;
var from_sex = -1;
if(from.match(/^,[w1]/)){
from_sex = 1;
}else if(from.match(/^,[h0]/)){
from_sex = 0;
}
if(to.match(/^,[w1]/)){
to_sex = 1;
}else if(to.match(/^,[h0]/)){
to_sex = 0;
}
if(from_sex==-1&&to_sex>-1){
my_sex = to_sex;
}else if(from_sex>-1&&to_sex==-1){
my_sex = from_sex;
}else if(from_sex==to_sex){
my_sex = from_sex;
}else{
return false;
}
}
var sex = my_sex;
var from_ids = selector2id(from,my_sex);
var to_ids = selector2id(to,my_sex);
var to_rids = [];
if(!from_ids.length||!to_ids.length){
return false;
}
if(to){
var toIsMale = false;
var toIsFemale = false;
to_ids.forEach(function(id){
if(id.match(/([fhs1](&[ol])?|[olx]b)$/)){
toIsMale = true;
}
if(id.match(/([mwd0](&[ol])?|[olx]s)$/)){
toIsFemale = true;
}
to_rids = to_rids.concat(reverseId(id,my_sex));
});
to_rids = unique(to_rids);
if(toIsMale&&toIsFemale){
sex = -1;
}else if(toIsMale){
sex = 1;
}else if(toIsFemale){
sex = 0;
}
}else{
to_rids = [''];
}
// console.log('[from_ids]',from_ids,'to_rids',to_rids);
var from_selector = from_ids.length>1?'['+from_ids.join('|')+']':from_ids[0];
var to_selector = to_rids.length>1?'['+to_rids.join('|')+']':to_rids[0];
return {
'selector':(to?','+to_selector:'')+(from?','+from_selector:''),
'sex':sex
};
};
// 设置模式
export function setMode(sign,data){
_mode[sign] = Object.assign(_mode[sign]||{},data);
};
// 获取指定模式数据
export function getDataByMode(sign){
var data = Object.assign({},_map);
if(sign&&_mode[sign]){
for(var key in _mode[sign]){
data[key] = [].concat(_mode[sign][key],_map[key]||[]);
}
}
return data;
};

194
src/prefix.js Normal file
View File

@ -0,0 +1,194 @@
// 分支关系链
export default {
'{G2}':{
'f,f,xb':['从祖'],
'm,f,xb':['外从祖'],
},
'{G1}':{
'f,xb':['堂','同堂','亲堂','从父','叔伯','从'],
'f,xs':['姑表','姑家'],
'm,xb':['舅表','舅家'],
'm,xs':['姨','从母','姨家','两姨','从'],
'f,f,xb,s':['从堂','再从父','远堂','堂叔伯','叔伯叔伯','再从'],
'f,f,xb,d':['堂姑表','从父姑表'],
'f,f,xs,s':['姑表叔表'],
'f,f,xs,d':['姑表姑表'],
'f,m,xb,s':['舅表叔表'],
'f,m,xb,d':['舅表姑表'],
'f,m,xs,s':['从母叔表'],
'f,m,xs,d':['从母姑表'],
'm,f,xb,s':['堂舅表','从父舅表'],
'm,f,xb,d':['堂姨表','从父姨表'],
'm,f,xs,s':['姑表舅表'],
'm,f,xs,d':['姑表姨表'],
'm,m,xb,s':['舅表舅表'],
'm,m,xb,d':['舅表姨表'],
'm,m,xs,s':['从母舅表'],
'm,m,xs,d':['再从母','姨姨','再从'],
'f,f,f,xb,s,s':['三从父','再从堂','远堂','族','三从'],
'm,m,m,xs,d,d':['三从母','三从'],
'f,f,f,f,xb,s,s,s':['四从父','三从堂','远堂','族','四从'],
'm,m,m,m,xs,d,d,d':['四从母','四从'],
},
'{G1M}':{
'f,ob':['伯'],
'f,lb':['叔','仲','季'],
'm,xb':['舅'],
'f,f,xb,s&o':['堂伯','从父伯','叔伯伯','从伯'],
'f,f,xb,s&l':['堂叔','从父叔','叔伯叔','从叔'],
'f,f,f,xb,s,s&o':['从堂伯'],
'f,f,f,xb,s,s&l':['从堂叔'],
'f,f,f,xb,s,s':['族'],
'f,f,xs,s&o':['姑表伯'],
'f,f,xs,s&l':['姑表叔'],
'f,m,xb,s&o':['舅表伯'],
'f,m,xb,s&l':['舅表叔'],
'f,m,xs,s&o':['姨伯','从母伯','从伯'],
'f,m,xs,s&l':['姨叔','从母叔','从叔'],
'm,f,xb,s':['堂舅','从父舅'],
'm,f,xs,s':['姑表舅'],
'm,m,xb,s':['舅表舅'],
'm,m,xs,s':['姨舅','从母舅'],
},
'{G1W}':{
'f,xs':['姑'],
'm,xs':['姨','姏','茙','荻'],
'f,f,xb,d':['堂姑','从父姑'],
'f,f,f,xb,s,d':['从堂姑'],
'f,f,xs,d':['姑表姑'],
'f,m,xb,d':['舅表姑'],
'f,m,xs,d':['姨姑','从母姑'],
'm,f,xb,d':['堂姨','从父姨'],
'm,f,xs,d':['姑表姨'],
'm,m,xb,d':['舅表姨'],
'm,m,xs,d':['姨姨','从母姨'],
},
'{G0}':{
'xb':['侄'],
'1,xb':['从'],
'1,f,xb,s':['再从'],
'1,f,f,xb,s,s':['三从'],
'h,xb':['叔侄','叔伯'],
'w,xb':['舅侄'],
'xs':['甥'],
'0,xs':['从'],
'0,m,xs,d':['再从'],
'0,m,m,xs,d,d':['三从'],
'h,xs':['姑甥'],
'w,xs':['姨甥','襟侄'],
},
'{M2W}':{
'f,f,xb,w':['叔祖父眷'],
'm,f,xb,w':['叔外祖父眷'],
'f,m,xb,w':['舅祖父眷'],
'm,m,xb,w':['舅外祖父眷'],
},
'{M2M}':{
'f,f,xs,h':['姑祖母姻'],
'm,f,xs,h':['姑外祖母姻'],
'f,m,xs,h':['姨祖母姻'],
'm,m,xs,h':['姨外祖母姻'],
},
'{M1W}':{
'f,xb,w':['叔眷'],
'f,f,xb,s,w':['从父叔眷'],
'f,f,xs,s,w':['姑表叔眷'],
'f,m,xb,s,w':['舅表叔眷'],
'f,m,xs,s,w':['姨表叔眷'],
'm,xb,w':['舅眷'],
'm,f,xb,s,w':['从父舅眷'],
'm,f,xs,s,w':['姑表舅眷'],
'm,m,xb,s,w':['舅表舅眷'],
'm,m,xs,s,w':['姨表舅眷'],
},
'{M1M}':{
'f,xs,h':['姑姻'],
'f,f,xb,d,h':['从父姑姻'],
'f,f,xs,d,h':['姑表姑姻'],
'f,m,xb,d,h':['舅表姑姻'],
'f,m,xs,d,h':['姨表姑姻'],
'm,xs,h':['姨姻'],
'm,f,xb,d,h':['从父姨姻'],
'm,f,xs,d,h':['姑表姨姻'],
'm,m,xb,d,h':['舅表姨姻'],
'm,m,xs,d,h':['姨表姨姻'],
},
'{M0}':{
'xb,w':['兄弟眷'],
'xs,h':['姊妹姻'],
'w,xb,w':['舅兄弟眷','内兄弟眷'],
'w,xs,h':['姨姊妹姻','内姊妹姻'],
'h,xb,w':['叔兄弟眷','外兄弟眷'],
'h,xs,h':['姑姊妹姻','外姊妹姻'],
'f,xb,s,w':['从父兄弟眷'],
'f,xb,d,h':['从父姊妹姻'],
'f,xs,s,w':['姑表兄弟眷'],
'f,xs,d,h':['姑表姊妹姻'],
'm,xb,s,w':['舅表兄弟眷'],
'm,xb,d,h':['舅表姊妹姻'],
'm,xs,s,w':['从母兄弟眷'],
'm,xs,d,h':['从母姊妹姻'],
},
'{M-1}':{
's,w':['男眷','息眷'],
'd,h':['女姻','息姻'],
'xb,s,w':['侄眷'],
'xb,d,h':['侄姻'],
'xs,s,w':['甥眷'],
'xs,d,h':['甥姻'],
'h,xb,s,w':['叔侄眷'],
'h,xb,d,h':['叔侄姻'],
'h,xs,s,w':['姑甥眷'],
'h,xs,d,h':['姑甥姻'],
'w,xb,s,w':['舅侄眷'],
'w,xb,d,h':['舅侄姻'],
'w,xs,s,w':['姨甥眷'],
'w,xs,d,h':['姨甥姻'],
'f,xb,s,s,w':['堂侄眷'],
'f,xb,s,d,h':['堂侄姻'],
'f,xb,d,s,w':['堂甥眷'],
'f,xb,d,d,h':['堂甥姻'],
'f,xs,s,s,w':['姑表侄眷'],
'f,xs,s,d,h':['姑表侄姻'],
'f,xs,d,s,w':['姑表甥眷'],
'f,xs,d,d,h':['姑表甥姻'],
'm,xb,s,s,w':['舅表侄眷'],
'm,xb,s,d,h':['舅表侄姻'],
'm,xb,d,s,w':['舅表甥眷'],
'm,xb,d,d,h':['舅表甥姻'],
'm,xs,s,s,w':['姨侄眷'],
'm,xs,s,d,h':['姨侄姻'],
'm,xs,d,s,w':['姨甥眷'],
'm,xs,d,d,h':['姨甥姻'],
},
'{M-2}':{
's,s,w':['孙眷'],
's,d,h':['孙姻'],
'd,s,w':['外孙眷'],
'd,d,h':['外孙姻'],
'xb,s,s,w':['侄孙眷'],
'xb,s,d,h':['侄孙姻'],
'xb,d,s,w':['侄外孙眷'],
'xb,d,d,h':['侄外孙姻'],
'xs,s,s,w':['甥孙眷'],
'xs,s,d,h':['甥孙姻'],
'xs,d,s,w':['甥外孙眷'],
'xs,d,d,h':['甥外孙姻'],
'h,xb,s,s,w':['叔侄孙眷','叔伯孙眷','叔孙眷'],
'h,xb,s,d,h':['叔侄孙姻','叔伯孙姻','叔孙姻'],
'h,xb,d,s,w':['叔侄外孙眷','叔伯外孙眷','叔外孙眷'],
'h,xb,d,d,h':['叔侄外孙姻','叔伯外孙姻','叔外孙姻'],
'h,xs,s,s,w':['姑甥孙眷','姑孙眷'],
'h,xs,s,d,h':['姑甥孙姻','姑孙姻'],
'h,xs,d,s,w':['姑甥外孙眷','姑外孙眷'],
'h,xs,d,d,h':['姑甥外孙姻','姑外孙姻'],
'w,xb,s,s,w':['舅侄孙眷','舅孙眷'],
'w,xb,s,d,h':['舅侄孙姻','舅孙姻'],
'w,xb,d,s,w':['舅侄外孙眷','舅外孙眷'],
'w,xb,d,d,h':['舅侄外孙姻','舅外孙姻'],
'w,xs,s,s,w':['姨甥孙眷','姨孙眷'],
'w,xs,s,d,h':['姨甥孙姻','姨孙姻'],
'w,xs,d,s,w':['姨甥外孙眷','姨外孙眷'],
'w,xs,d,d,h':['姨甥外孙姻','姨外孙姻'],
}
};

89
src/relationship.js Normal file
View File

@ -0,0 +1,89 @@
import {
unique,
getSelectors,
selector2id,
getItemsById,
reverseId,
getChainById,
mergeSelector,
setMode,
getDataByMode
} from './method';
var _data = getDataByMode(); // 最终数据
// 对外方法
var relationship = function (parameter){
var options = Object.assign({
text:'',
target:'',
sex:-1,
type:'default', // 'chain'表示关系链
reverse:false, // true表示反向
mode:'default', // 用户自定义模式
},parameter);
_data = getDataByMode(options.mode);
var from_selectors = getSelectors(options.text);
var to_selectors = getSelectors(options.target);
if(!to_selectors.length){
to_selectors = [''];
}
// console.log('[selectors]',from_selectors,to_selectors);
var result = []; //匹配结果
from_selectors.forEach(function(from){
to_selectors.forEach(function(to){
var data = mergeSelector(from,to,options.sex);
// console.log('[data]',from,to,data);
var ids = data?selector2id(data['selector'],data['sex']):null;
// console.log('[ids]',data['selector'],data['sex'],ids);
if(ids){
ids.forEach(function(id){
var temps = [id];
var sex = data['sex'];
if(options.reverse){
temps = reverseId(id,data['sex']);
if(id.match(/([fhs1](&[ol])?|[olx]b)$/)){
sex = 1;
}else{
sex = 0;
}
}
if(options.type=='chain'){
temps.forEach(function(id){
var item = getChainById(id);
if(item){
if(id.match(/^[^hw]/)){
if(data['sex']==0){
item = '(女性)'+item;
}else if(data['sex']==1){
item = '(男性)'+item;
}
}
result.push(item);
}
});
}else{
temps.forEach(function(id){
var items = getItemsById(id);
if(!items.length){
items = getItemsById(sex+','+id);
}
if(items.length){
result = result.concat(items);
}
});
}
});
}
});
});
return unique(result);
};
// 获取数据表
relationship.data = _data;
// 获取数据量
relationship.dataCount = Object.keys(_data).length;
// 设置语言模式
relationship.setMode = setMode;
export default relationship;

View File

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

View File

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

34
webpack.config.js Normal file
View File

@ -0,0 +1,34 @@
var path = require('path');
var webpack = require('webpack');
const TerserJSPlugin = require('terser-webpack-plugin');
const pkg = require('./package');
var repository = pkg.repository.url.replace(/(.+)(:\/\/.+)\.git$/,'https$2');
var copyright = `${pkg.name} v${pkg.version} - ${pkg.description}
${pkg.homepage}
Copyright (c) 2016-present, ${pkg.author}
Released under the ${pkg.license} License.
${repository}/`;
module.exports = {
entry: './src/relationship.js',
output: {
path: path.resolve(__dirname,'dist'),
filename: 'relationship.min.js',
globalObject: 'this',
library: 'relationship',
libraryTarget: 'umd',
libraryExport:'default'
},
plugins: [
new webpack.BannerPlugin(copyright)
],
optimization: {
minimizer: [
new TerserJSPlugin({
extractComments: false
}),
]
}
};

View File

@ -12,7 +12,7 @@
<title>中國親戚關系計算器 親戚稱謂計算器 親戚稱呼大全</title>
<meta name="keywords" content="家庭稱謂,親戚稱呼,親戚稱謂,親戚叫法,親屬關系,親屬稱謂,關系計算器,親戚計算器,稱呼計算器,稱謂計算器,輩分計算器,親戚關系大全,親戚稱呼大全"/>
<meta name="description" content="中國親戚關系計算器是一款最爲全面準確的親戚稱呼計算器及親戚關系在線查詢工具,逢年過節走親訪友必備神器,亦可作爲家庭啓蒙教育應用。"/>
<link rel="stylesheet" href="style/index.css">
<link rel="stylesheet" href="static/style/index.css">
<script type="text/javascript">
setTimeout(function(){
if(location.protocol.indexOf('http')>-1&&location.hostname.indexOf('passer-by.com')==-1){
@ -51,7 +51,7 @@
<p>逢年過節遇到三姑六婆,拒絕叫不出口的尷尬!輕鬆搞定親戚關系~</p>
<p>當前親戚稱呼大全已收錄約<b id="count">-</b>條親戚關系</p>
<div class="picture">
<img src="image/app.png" width="512" height="320" alt="親戚稱呼換算APP"/>
<img src="static/image/app.png" width="512" height="320" alt="親戚稱呼換算APP"/>
<a class="btn" href="/relationship/vue/" target="_blank">訪問手機版</a>
</div>
</div>
@ -299,25 +299,25 @@
<ul>
<li>
<div class="app">
<span class="icon"><img src="image/icon/miui.png" width="64" height="64"/></span>
<span class="icon"><img src="static/image/icon/miui.png" width="64" height="64"/></span>
<span class="name">小米計算器</span>
</div>
</li>
<li>
<div class="app">
<span class="icon"><img src="image/icon/quanneng.png" width="64" height="64"/></span>
<span class="icon"><img src="static/image/icon/quanneng.png" width="64" height="64"/></span>
<span class="name">全能計算器</span>
</div>
</li>
<li>
<div class="app">
<span class="icon"><img src="image/icon/yuwendaren.png" width="64" height="64"/></span>
<span class="icon"><img src="static/image/icon/yuwendaren.png" width="64" height="64"/></span>
<span class="name">有道語文達人</span>
</div>
</li>
<li>
<div class="app">
<span class="icon"><img src="image/icon/qinqi.png" width="64" height="64"/></span>
<span class="icon"><img src="static/image/icon/qinqi.png" width="64" height="64"/></span>
<span class="name">親戚計算器</span>
</div>
</li>
@ -329,7 +329,7 @@
<div class="inner">
<div class="bd">
<div class="box">
<p><img src="image/qrcode.jpg" width="150" alt="親戚關系微信小程序"/></p>
<p><img src="static/image/qrcode.jpg" width="150" alt="親戚關系微信小程序"/></p>
<p>微信掃一掃,使用小程序</p>
</div>
<p>Copyright &copy; <a href="http://passer-by.com">passer-by.com</a></p>