micros / splitname
适用于Laravel 10及更高版本,允许您将西班牙语姓名分为四个主要部分
v1.0.14
2023-04-03 02:47 UTC
Requires
- voku/portable-ascii: ^2.0
- voku/portable-utf8: ^6.0
Requires (Dev)
- symfony/var-dumper: ^6.2
README
此库适用于Laravel 10及以上版本,允许您将西班牙语姓名分为四个主要部分
- 名
- 中间名
- 姓氏
- 其他姓氏
此外,此库试图识别性别(女性或男性)
此库使用其内部术语字典和自己的规则定义。它可以通过使用学习新术语,这意味着使用越多,库越准确。
系统无法学习新规则(只有新术语),但这是一个正在开发的功能。
请注意,如果库在许多项目中使用,具有独立安装,由于数据库不同,您将无法从学习能力中受益。您应手动同步数据库之间新学习到的术语。
建议多次运行系统对数据库进行分类,以便让系统学习新术语,从而提高准确性。
系统可以处理未知姓名和姓氏,但没有使用非西班牙语姓名进行测试。
请在自己的风险下使用,并仔细阅读许可证。
描述
此库适用于Laravel 10及以上版本,允许您将西班牙语姓名分为其四个基本组成部分
- 名
- 其他名
- 姓氏
- 其他姓氏
此外,该库试图检测与姓名相对应的性别(女性或男性)。
该库使用自己的名称和规则字典,并且能够通过使用学习新术语,这意味着使用越多,系统越精确。
目前,系统无法学习新规则(仅新术语),但这是一个正在开发的功能。
请注意,如果使用此库在多个项目中,具有独立的安装,由于数据库不同,您将无法从自动学习功能中受益。您可以手动将新学习到的名称在不同数据库之间导出,但这尚未自动化。
建议多次在相同的姓名集合上运行系统,以便系统可以学习新名称,从而提高分类的准确性。
系统可以处理未知姓名和姓氏,但尚未对外国姓名进行测试。
请自行承担风险使用。许可证允许您在任何项目中使用它,但您必须为作者提供信用。
安装/安装
composer require micros/splitname
php artisan migrate
如何使用/使用方法
use Micros\Splitname\SplitName;
$splitter = new SplitName();
$tests = [
'Leonardo Forero Sandoval',
'Díaz Duran, Adriana',
'José Francisco de San Martín y Matorras.',
'Manuel José Joaquín del Corazón de Jesús Belgrano.',
'Cornelio Judas Tadeo de Saavedra y Rodríguez.',
'Bernardino de la Trinidad González de Rivadavia y Rodríguez de Rivadavia.',
'Francisco José de Paula Santander Omaña',
'Simón José Antonio de la Santísima Trinidad Bolívar Ponte y Palacios Blanco',
'delcy gomez viuda de rodriguez',
'Carmen Herrera García Vda. de López',
];
foreach ($tests as $test) {
$parts = $splitter->split($test)['classified'];
dump($parts);
}
$splitter->process();