js正则,匹配 '@group/package@version' 的第二个@字符

求一个正则,需求是这样的

const str = '@group/package@version';const reg = /____/; // 求这个正则const arr = str.split(reg); // 得到 ['@group/package', 'version']


呼如林
浏览 500回答 1
1回答

郎朗坤

/**  * 拆分名称和版本号  * @param {String} _package 包的类型总共有4种。  */function _split(_package) {     // 包的类型总共有4种,     // (1)'smash-cli'              => arr = [ 'smash-cli' ]     // (2)'smash-cli@1.0.0'        => arr = [ 'smash-cli', '1.0.0' ]     // (3)'@erye/smash-cli'        => arr = [ '', 'erye/smash-cli' ]     // (4)'@erye/smash-cli@1.0.0'  => arr = [ '', 'erye/smash-cli', '1.0.0' ]     const arr = _package.split('@');    if (arr[0] == '') {        // 数组首位是空,符合类型 3、4         arr[1] = '@' + arr[1]; // 给第二位加上 @ 字符         arr.shift();           // 移除首位     }    return { name: arr[0], version: arr[1] }; }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript