定制 jity/tag-generator 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

jity/tag-generator

最新稳定版本:v0.2.1

Composer 安装命令:

composer require jity/tag-generator

包简介

Generate Tags from a given text.

README 文档

README

Build Status

About

This bundle is part of the Jity project. With the help of this generator you be able to transform any text to a usefull collection of tags.

Installation

Add JityTagGenerator to your composer.json:

{
    "require": {
        "jity/tag-generator": "dev-master"
    }
}

Download bundle:

php composer.phar update

Add the JityTagGenerator to your AppKernel.php

public function registerBundles()
{
    $bundles = array(
        ...
        new Jity\TagGeneratorBundle\JityTagGeneratorBundle(),
        ...
    );
    ...
}

Usage

This is a simple example how to use the TagGenerator.

use Jity\Tag\TagGenerator,
    Jity\Tag\Filter\Score,
    Jity\Tag\Filter\ScoreGroup,
    Jity\Tag\Filter\Length,
    Jity\Tag\Filter\Occurrence,
    Jity\Tag\Filter\Dictionary,
    Jity\Tag\Filter\Capitalized,
    Jity\Tag\Filter\Uppercase,
    Jity\Tag\Filter\Camelcase,
    Jity\Tag\Filter\Regex;

/* ------------------------------------------------------ */
/* - Configuration */
/* ------------------------------------------------------ */

// Instantiate a new Generator
$generator = new TagGenerator();

// Configure all Filters
$generator

    /* Remove words shorter than 3 chars */
    ->addFilter(
        new Length(1, true, array(
            'min' => 2
        ))
    )

    /* Remove most useless words from collection (stop-words) */
    ->addFilter(
        new Dictionary(1, true, array(
            'match'         => true,
            'casesensitive' => false,
            'dictionaries'  => array(
                'german'    => array(
                    'adjektive',
                    'verben',
                    'klein',
                    'fixwords'
                )
            )
        ))
    )  

    /* Score occurrence of remaining words */
    ->addFilter(
        new Occurrence(5)
    ) 

    /* Score uppercased words */
    ->addFilter(new Uppercase(15))

    /* Score camelcased words */
    ->addFilter(new Camelcase(15))

    /* Score capitalized words */
    ->addFilter(new Capitalized(5));

// Receive the collection of tags
$tags = $generator->getTags('Lorem ipsum etc');

Development

Write own filters

All you need to do this is to implement Jity\Tag\Filter\FilterInterface or extend Jity\Tag\Filter\AbstractFilter. A good and simple example is the Jity\Tag\Filter\Uppercase filter. Just have a look at this.

Recompile a dictionary

Go to resources/dictionaries/LANG/source and run:

for i in stopwords fixwords adjektive verben compound klein verben worte; do cat source/${i}*.txt | ../compiler.sh "$i"; done

统计信息

  • 总下载量: 11
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0
  • 更新时间: 2012-11-10

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固