parse - nodef/extra-version GitHub Wiki

Converts string to version. :running: :vhs: :package: :moon: :ledger:

Similar: from, parse, stringify.

version.parse(s, [i], [lvl]);
// s:   a string
// i:   start index (0)
// lvl: permissive level, 0-4/-1 (0 => none)
// --> [end index, version], or [-1, null]
const version = require('extra-version');

version.parse('1.2');
// [-1, null] (not a semver)

version.parse('1.2.0');
// [
//   5,             ^ end index
//   Version {
//     major: 1,
//     minor: 2,
//     patch: 0,
//     prerelease: [],
//     buildmetadata: []
//   }
// ]

version.parse('[email protected]', 7);
// [                  ^ start here
//   12,                   ^ end index
//   Version {
//     major: 1,
//     minor: 2,
//     patch: 3,
//     prerelease: [],
//     buildmetadata: []
//   }
// ]

version.parse('[email protected]', 7, -1);
// [                  ^ start here  ^ permit any error
//   14,                     ^ end index
//   Version {
//     major: 1,
//     minor: 2,
//     patch: 3,
//     prerelease: [],
//     buildmetadata: [ '4' ]
//   }
// ]

references