Nominating Presidential Muppets

    pluralize
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/pluralize package

    8.0.0 • Public • Published

    Pluralize

    NPM version NPM downloads Build status Test coverage File Size CDNJS

    Pluralize and singularize any word.

    Installation

    npm install pluralize --save
    yarn add pluralize
    bower install pluralize --save
    

    Node

    var pluralize = require('pluralize')

    AMD

    define(function (require, exports, module) {
      var pluralize = require('pluralize')
    })

    <script> tag

    <script src="pluralize.js"></script>

    Why?

    This module uses a pre-defined list of rules, applied in order, to singularize or pluralize a given word. There are many cases where this is useful, such as any automation based on user input. For applications where the word(s) are known ahead of time, you can use a simple ternary (or function) which would be a much lighter alternative.

    Usage

    • word: string The word to pluralize
    • count: number How many of the word exist
    • inclusive: boolean Whether to prefix with the number (e.g. 3 ducks)

    Examples:

    pluralize('test') //=> "tests"
    pluralize('test', 0) //=> "tests"
    pluralize('test', 1) //=> "test"
    pluralize('test', 5) //=> "tests"
    pluralize('test', 1, true) //=> "1 test"
    pluralize('test', 5, true) //=> "5 tests"
    pluralize('蘋果', 2, true) //=> "2 蘋果"
     
    // Example of new plural rule:
    pluralize.plural('regex') //=> "regexes"
    pluralize.addPluralRule(/gex$/i, 'gexii')
    pluralize.plural('regex') //=> "regexii"
     
    // Example of new singular rule:
    pluralize.singular('singles') //=> "single"
    pluralize.addSingularRule(/singles$/i, 'singular')
    pluralize.singular('singles') //=> "singular"
     
    // Example of new irregular rule, e.g. "I" -> "we":
    pluralize.plural('irregular') //=> "irregulars"
    pluralize.addIrregularRule('irregular', 'regular')
    pluralize.plural('irregular') //=> "regular"
     
    // Example of uncountable rule (rules without singular/plural in context):
    pluralize.plural('paper') //=> "papers"
    pluralize.addUncountableRule('paper')
    pluralize.plural('paper') //=> "paper"
     
    // Example of asking whether a word looks singular or plural:
    pluralize.isPlural('test') //=> false
    pluralize.isSingular('test') //=> true

    License

    MIT

    Install

    npm i pluralize

    DownloadsWeekly Downloads

    6,502,590

    Version

    8.0.0

    License

    MIT

    Unpacked Size

    17.7 kB

    Total Files

    4

    Last publish

    Collaborators

    • blakeembrey