npm nlf - 之后提取版本号(使用 RegEx)
npm nlf - extracting version numbers out afterwards (using RegEx)
我一直在尝试使用很棒的包 nlf
来创建许可证列表
但想从它生成的大量列表中删除特定版本号
我刚刚开始学习 RegEx 并且到目前为止得到了这个表达式
\b[^\w]@*[\d.]\b
不过好像也抢进了license版本号..
我只想取出@
和space之间的数字。
这是一些示例文本
jsesc@1.3.0 [license(s): MIT]
package.json: MIT
json-schema@0.2.3 [license(s): AFLv2.1, AFLv2.1/BSD, BSD]
package.json: AFLv2.1, AFLv2.1/BSD, BSD
readme files: BSD
json-schema-traverse@0.3.1 [license(s): MIT]
package.json: MIT
license files: MIT
json-stable-stringify@1.0.1 [license(s): MIT]
package.json: MIT
license files: MIT
readme files: MIT
json-stringify-safe@5.0.1 [license(s): ISC]
package.json: ISC
license files: ISC
json5@0.4.0 [license(s): MIT]
package.json: MIT
readme files: MIT
json5@0.5.1 [license(s): MIT]
package.json: MIT
license files: MIT
仅供参考:如果重要的话,我正在使用 Atom..
您的正则表达式无法按预期工作,因为 @
与 \b[^\w]
匹配(任何以单词 char 开头的非单词字符)并且 @*
模式不匹配任何., 并且 [\d.]\b
匹配一个
您可以使用
\b@[\d.]*\d
参见regex demo。
详情
\b@
- @
前面有任何字符字符(字母、数字或 _
)
[\d.]*
- 0+ 位或.
,越多越好
\d
- 一个数字。
我一直在尝试使用很棒的包 nlf
来创建许可证列表
但想从它生成的大量列表中删除特定版本号
我刚刚开始学习 RegEx 并且到目前为止得到了这个表达式
\b[^\w]@*[\d.]\b
不过好像也抢进了license版本号..
我只想取出@
和space之间的数字。
这是一些示例文本
jsesc@1.3.0 [license(s): MIT]
package.json: MIT
json-schema@0.2.3 [license(s): AFLv2.1, AFLv2.1/BSD, BSD]
package.json: AFLv2.1, AFLv2.1/BSD, BSD
readme files: BSD
json-schema-traverse@0.3.1 [license(s): MIT]
package.json: MIT
license files: MIT
json-stable-stringify@1.0.1 [license(s): MIT]
package.json: MIT
license files: MIT
readme files: MIT
json-stringify-safe@5.0.1 [license(s): ISC]
package.json: ISC
license files: ISC
json5@0.4.0 [license(s): MIT]
package.json: MIT
readme files: MIT
json5@0.5.1 [license(s): MIT]
package.json: MIT
license files: MIT
仅供参考:如果重要的话,我正在使用 Atom..
您的正则表达式无法按预期工作,因为 @
与 \b[^\w]
匹配(任何以单词 char 开头的非单词字符)并且 @*
模式不匹配任何., 并且 [\d.]\b
匹配一个
您可以使用
\b@[\d.]*\d
参见regex demo。
详情
\b@
-@
前面有任何字符字符(字母、数字或_
)[\d.]*
- 0+ 位或.
,越多越好\d
- 一个数字。