1 var memoizeCapped = require(
'./_memoizeCapped');
4 var reLeadingDot = /^\./,
5 rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|([
"'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
8 var reEscapeChar = /\\(\\)?/g;
17 var stringToPath = memoizeCapped(function(string) {
19 if (reLeadingDot.test(string)) {
22 string.replace(rePropName, function(match, number, quote, string) {
23 result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));
28 module.exports = stringToPath;