Thanks to visit codestin.com
Credit goes to github.com

Skip to content

parsakafi/wordsninja

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WordsNinja

Split an English sentence that lacks spaces and accents into separate words.

https://nodei.co/npm/wordsninja.png?downloads=true&downloadRank=true&stars=true

Install

npm install wordsninja --save

Load package

const WordsNinjaPack = require('wordsninja');
const WordsNinja = new WordsNinjaPack();

Load dictionary

await WordsNinja.loadDictionary(); // First load dictionary

Add word(s)

WordsNinja.addWords('new word');

Parameters

  • word: The word(s) (string|array)

Split sentence

let words = WordsNinja.splitSentence(string, {camelCaseSplitter, capitalizeFirstLetter, joinWords});

Parameters

  • string: The string for split
  • options
    • camelCaseSplitter: Split by Camel Case, Default is false (optional)
    • capitalizeFirstLetter: Capitalize First Letter, Default is false (optional)
    • joinWords: Return join words as sentence, Default is false (optional)

Example

(async () => {
    await WordsNinja.loadDictionary(); // First load dictionary
    let string = 'youneedtolearnfromyourmistakes';
    let words = WordsNinja.splitSentence(string);
    console.log(words);
})();

Result

[ 'you', 'need', 'to', 'learn', 'from', 'your', 'mistakes' ]

More options

let string = 'youneedtolearnfromyourmistakes';
let words = WordsNinja.splitSentence(string,
    {
        camelCaseSplitter: true,  // Camel case splitting
        capitalizeFirstLetter: true,  // Capitalize first letter of result
        joinWords: true  // Join words with spaces
    }
);
console.log(words);

Result

You Need To Learn From Your Mistakes

Add Word(s)

You can add new word(s) to dictionary in runtime

WordsNinja.addWords('Parsa');  // Add one word
WordsNinja.addWords(['Parsa', 'Kafi']); // Add one or more words

Example

let string = 'parsayouneedtolearnfromyourmistakes';
WordsNinja.addWords('Parsa');
let words = WordsNinja.splitSentence(string,
    {
        capitalizeFirstLetter: true,  // Capitalize first letter of result
        joinWords: true  // Join words with spaces
    }
);
console.log(words);

Result

Parsa You Need To Learn From Your Mistakes

Contributors

Contributors

Acknowledgement

Algorithm from How to split text without spaces into list of words?. List of words from wordninja python package. Camel case splitter based on split-camelcase-to-words package.

About

Split a English sentence without any spaces nor accents, into words

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •