首页 > 其他分享 >这个中国亲戚关系计算器让你告别“社死”

这个中国亲戚关系计算器让你告别“社死”

时间:2024-03-11 10:22:50浏览次数:24  
标签:称谓 社死 relationship 外婆 text xxx 称呼 计算器 亲戚关系

大家好,我是 Java陈序员

由于为了生活奔波,常年在外,导致很多关系稍疏远的亲戚之间来往并不多。

因此节假日回家时,往往会搞不清楚哪位亲戚应该喊什么称呼,很容易“社死”。

今天给大家介绍一个亲戚关系计算器,让你快速的计算出正确的亲戚称谓!

关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。

项目介绍

relationship —— 中国亲戚关系计算器,只需简单的输入即可算出称谓。

输入框兼容了不同的叫法,你可以称呼父亲为:“老爸”、“爹地”、“老爷子”等等,方便不同地域的习惯叫法。

快捷输入按键,只需简单的点击即可完成关系输入,算法还支持逆向查找称呼哦~

功能特色:

  • 使用别称查询:姥姥的爸爸的老窦 = 外曾外曾祖父
  • 使用合称查询:姐夫的双亲 = 姊妹姻父 / 姊妹姻母
  • 大小数字混合查询:大哥的二姑妈的七舅姥爷 = 舅曾外祖父
  • 不限制祖辈孙辈跨度查询:舅妈的婆婆的外甥的姨妈的侄子 = 舅表舅父
  • 根据年龄推导可能性:哥哥的表姐 = 姑表姐 / 舅表姐
  • 根据语境确认性别:老婆的女儿的外婆 = 岳母
  • 支持古文式表达:吾父之舅父 = 舅爷爷
  • 解析某称谓关系链:七舅姥爷 = 妈妈的妈妈的兄弟
  • 算两个亲戚间的合称关系:奶奶 + 外婆 = 儿女亲家

项目地址:

https://github.com/mumuy/relationship

在线体验:

https://passer-by.com/relationship/

移动端体验地址:

https://passer-by.com/relationship/vue/

功能体验

1、关系找称呼

2、称呼找关系

3、两者间关系

4、两者的合称

安装使用

1、直接引入安装

<script src="https://passer-by.com/relationship/dist/relationship.min.js">

获取全局方法 relationship.

2、使用 npm 包管理安装

安装依赖:

npm install relationship.js

包引入:

// CommonJS 引入
const relationship = require("relationship.js");
// ES Module 引入
import relationship from 'relationship.js';

3、使用方法:唯一的计算方法 relationship.

  • 选项模式 relationship(options)

    构造函数:

    var options = {
        text:'',		// 目标对象:目标对象的称谓汉字表达,称谓间用‘的’字分隔
        target:'',	    // 相对对象:相对对象的称谓汉字表达,称谓间用‘的’字分隔,空表示自己
        sex:-1,			// 本人性别:0表示女性,1表示男性
        type:'default',	// 转换类型:'default'计算称谓,'chain'计算关系链,'pair'计算关系合称
        reverse:false,	// 称呼方式:true对方称呼我,false我称呼对方
        mode:'default',	// 模式选择:使用setMode方法定制不同地区模式,在此选择自定义模式
        optimal:false,  // 最短关系:计算两者之间的最短关系
    };
    

    代码示例:

    // 如:我应该叫外婆的哥哥什么?
    relationship({text:'妈妈的妈妈的哥哥'});
    // => ['舅外公']
    
    // 如:七舅姥爷应该叫我什么?
    relationship({text:'七舅姥爷',reverse:true,sex:1});
    // => ['甥外孙']
    
    // 如:舅公是什么亲戚
    relationship({text:'舅公',type:'chain'});
    // => ['爸爸的妈妈的兄弟', '妈妈的妈妈的兄弟', '老公的妈妈的兄弟']
    
    // 如:舅妈如何称呼外婆?
    relationship({text:'外婆',target:'舅妈',sex:1});
    // => ['婆婆']
    
    // 如:外婆和奶奶之间是什么关系?
    relationship({text:'外婆',target:'奶奶',type:'pair'});
    // => ['儿女亲家']
    
  • 语句模式 relationship(exptession)

    参数 exptession 句式可以为:xxx是xxx的什么人、xxx叫xxx什么、xxx如何称呼xxx等。

    代码示例:

    // 如:舅妈如何称呼外婆?
    relationship('舅妈如何称呼外婆?');
    // => ['婆婆']
    
    // 如:外婆和奶奶之间是什么关系?
    relationship('外婆和奶奶之间是什么关系?');
    // => ['儿女亲家']
    

4、其他 API

// 获取当前数据表 
relationship.data

// 获取当前数据量 
relationship.dataCount

// 用户自定义模式 
relationship.setMode(mode_name,mode_data)

最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

https://chencoding.top:8090/#/

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!

标签:称谓,社死,relationship,外婆,text,xxx,称呼,计算器,亲戚关系
From: https://www.cnblogs.com/codechen8848/p/18065098

相关文章

  • Python项目 简单计算器的二次开发
    在互联网上找到一个简单计算器的项目源码点击查看代码#计算器#加法defadd(a,b):c=a+bprint(f"结果为:{c:.2f}")#减法defsub(a,b):c=a-bprint(f"结果为:{c:.2f}")#乘法defmul(a,b):c=a*bprint(f"结果为:{c:.2f}......
  • python使用栅格计算器
    重采样是指根据一类象元的信息内插出另一类象元信息的过程。在遥感中,重采样是从高分辨率遥感影像中提取出低分辨率影像的过程。常用的重采样方法有最邻近内插法、双线性内插法和三次卷积法内插。  ReadAsArray函数可以重采样读取的数据,并且指定输出缓冲区大小或传递一个已有......
  • PySide基础三大件案例_计算器
    描述制作一个简单的计算器,要求可以输入0-9的数字和四则运算,=则输出计算结果,reset则清空计算器展示代码fromPySide6.QtWidgetsimportQApplication,QWidgetfromCalculator_uiimportUi_FormclassClaculator(QWidget,Ui_Form):#Mark使用多重继承的特性进行调用d......
  • 简易计算器
    //实现计算器publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);booleanflag=true;while(flag){System.out.println("请选择要进行的操作(+、-、*、/),输入x代表终止运行:");Stringope......
  • 写一个计算器加减乘除能循环接收
    需求写一个计算器加减乘除能循环接收代码实现packagecom.jichu.Method;importjava.util.Scanner;publicclassDemo07{publicstaticvoidmain(String[]args){//写一个计算器加减乘除能循环接收Scannerscanner=newScanner(System.in);......
  • 用Java编译一个简单计算器
    作业写一个计算器,要求实现加减乘除功能,并且能够循环接收新的数据,通过用户交互实现。思路推荐:写4个方法,加减乘除利用循环+switch进行用户交互传递需要操作的两个数输出结构packagecom.hongyi.method;importjava.util.Scanner;//写一个计算器,要实现加减乘除功能,......
  • 9.【题解】计算器
    题解\(BSGS\)(拔山盖世)其实叫\(Baby\)\(Step\)\(Giant\)\(Step\)(大步小步)\(qwq\),事实上还有\(ex\)\(BSGS\),但是这里只写\(BSGS\)。当\(\gcd(x,y)=1\)时,\(BSGS\)可以用\(\sqrtn\)的时间复杂度求解\(\largey^x\equivz\pmodz\)的问题。(原根是\(\largex^a......
  • [office] 为Excel的工具栏添加计算器功能按钮
    在用Excel编辑文档时,有时需要计算一些数据的数值(加减乘除都可能要用到),一般我们都是点击“开始→程序→附件”再点击“计算器”,如果每次都这样操作的话就很麻烦。其实我们可以将计算器直接添加在Excel的工具栏上,方法如下。打开Excel,点击视图菜单的“工具(T)”,然后点击“自定义(C)......
  • 前端歌谣-第陆拾陆课-html+css+js实现计算器效果
    前言我是歌谣微信公众号关注前端小歌谣一起学习前端知识今天继续给大家讲解计算器的讲解index.css/*Basicreset*/*{ margin:0; padding:0; box-sizing:border-box; /*Bettertextstyling*/ font:bold14pxArial,sans-serif;}/*FinallyaddingsomeIE9......
  • go-计算器
    为了实践一下go语言,弄一个+-*/和有小括号的计算器,其中小括号的嵌套可以任意多个。代码如下:packagemainimport( "fmt" "regexp" "sort" "strconv" "strings")funcmain(){ str:="6-4*(1+(2*((3+4)*2)+2)-(9-5*4)*2)-(2*3-(2+5+3-2*2))+6&......