Projekt

Obecné

Profil

Stáhnout (1.01 KB) Statistiky
| Větev: | Revize:
1 3a515b92 cagy
var asciiWords = require('./_asciiWords'),
2
    hasUnicodeWord = require('./_hasUnicodeWord'),
3
    toString = require('./toString'),
4
    unicodeWords = require('./_unicodeWords');
5
6
/**
7
 * Splits `string` into an array of its words.
8
 *
9
 * @static
10
 * @memberOf _
11
 * @since 3.0.0
12
 * @category String
13
 * @param {string} [string=''] The string to inspect.
14
 * @param {RegExp|string} [pattern] The pattern to match words.
15
 * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
16
 * @returns {Array} Returns the words of `string`.
17
 * @example
18
 *
19
 * _.words('fred, barney, & pebbles');
20
 * // => ['fred', 'barney', 'pebbles']
21
 *
22
 * _.words('fred, barney, & pebbles', /[^, ]+/g);
23
 * // => ['fred', 'barney', '&', 'pebbles']
24
 */
25
function words(string, pattern, guard) {
26
  string = toString(string);
27
  pattern = guard ? undefined : pattern;
28
29
  if (pattern === undefined) {
30
    return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);
31
  }
32
  return string.match(pattern) || [];
33
}
34
35
module.exports = words;