Skip to content

jonschlinkert/matchkeys

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

matchkeys NPM version

Utility for returning a list of arrays that contain matching keywords. Useful for filtering package.json files.

Install

Install with npm:

npm i matchkeys --save-dev

Usage

var matchkeys = require('matchkeys');

matchkeys ( array, patterns, property )

Return an array of objects that contain arrays with matching strings. patterns may be glob patterns, strings, or an array of glob patterns or strings.

Example::

var arr = [
  {name: 'a', keywords: ['apple', 'orange', 'grape']},
  {name: 'b', keywords: ['banana', 'orange', 'pineapple']},
  {name: 'c', keywords: ['watermelon', 'strawberry', 'kiwi']},
  {name: 'd', keywords: ['watermelon', 'blah']},
  {name: 'e', keywords: ['watermelon', 'blah', 'lodash']},
];
console.log(matchkeys(arr, 'apple'));
//=> [{name: 'a', keywords: ['apple', 'orange', 'grape']}]

console.log(matchkeys(arr, 'o*'));
//=>
// [
//   {name: 'a', keywords: ['apple', 'orange', 'grape']},
//   {name: 'b', keywords: ['banana', 'orange', 'pineapple']}
// ]

Params:

  • array {Object|Array}:
  • patterns {String|Array}: The glob patterns or strings to use for matching.
  • prop {String}: Optionally pass the name of the property to search.
  • return {Array} Array of objects with matching strings.

matchkeys.filter ( array, patterns )

Wrapper around multimatch. Returns an array of matching strings, from an array or arrays of strings.

Example:

var keywords = [
  ['apple', 'orange', 'grape'],
  ['banana', 'orange', 'pineapple'],
  ['watermelon', 'strawberry', 'kiwi'],
  ['watermelon', 'blah'],
  ['watermelon', 'blah', 'lodash'],
];

console.log(matchkeys.filter(keywords, '{p,b}*'));
//=> ['banana', 'pineapple', 'blah']

Params:

  • array {Array}: Can be an array or an array of arrays.
  • pattern {Array|String}: The glob pattern to use.
  • return {Array}

Author

Jon Schlinkert

License

Copyright (c) 2014 Jon Schlinkert, contributors.
Released under the MIT license


This file was generated by verb-cli on June 20, 2014.

About

Return an array of resolved filepaths for specified npm module dependencies. Minimatch patterns can be used.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published