| 
						 | 
						- var memoizeCapped = require('./_memoizeCapped');
 - 
 - /** Used to match property names within property paths. */
 - var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
 - 
 - /** Used to match backslashes in property paths. */
 - var reEscapeChar = /\\(\\)?/g;
 - 
 - /**
 -  * Converts `string` to a property path array.
 -  *
 -  * @private
 -  * @param {string} string The string to convert.
 -  * @returns {Array} Returns the property path array.
 -  */
 - var stringToPath = memoizeCapped(function(string) {
 -   var result = [];
 -   if (string.charCodeAt(0) === 46 /* . */) {
 -     result.push('');
 -   }
 -   string.replace(rePropName, function(match, number, quote, subString) {
 -     result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));
 -   });
 -   return result;
 - });
 - 
 - module.exports = stringToPath;
 
 
  |