首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用regex从数据中检索数字?

如何使用regex从数据中检索数字?
EN

Stack Overflow用户
提问于 2020-04-21 20:23:58
回答 2查看 77关注 0票数 0

我试图在字母之后和美元符号之前检索数字。在运行代码时,我一直接收"null“作为输出。

例如:来自VOO2.1315$262.67$86.88$559.88DIS1.94733$104.45$27.77$203.40IWM1.07511$122.55...的数字2.1315,1.94733,1.07511

代码语言:javascript
复制
var data = "VOO2.1315$262.67$86.88$559.88DIS1.94733$104.45$27.77$203.40IWM1.07511$122.55$14.98$131.75DAL5$24.04-$44.26$120.19XOM2$42.46-$18.40$84.92VYM1$77.59$7.15$77.59SBUX1.19403$76.64$15.12$91.51"; 
var regex = /^\d+\.\d{0,2}$/g;
var found = data.match(regex);
console.log(found);
console.log(data);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-04-21 20:32:35

我使用字符串进行了数字转换,如果不需要,则删除.map(Number)

在ECMA-262规范中可以找到它的前后断言

代码语言:javascript
复制
const data = 'VOO2.1315$262.67$86.88$559.88DIS1.94733$104.45$27.77$203.40IWM1.07511$122.55$14.98$131.75DAL5$24.04-$44.26$120.19XOM2$42.46-$18.40$84.92VYM1$77.59$7.15$77.59SBUX1.19403$76.64$15.12$91.51';
const regex = /(?<=[a-z])\d+\.\d+(?=\$)/gi;

const numbers = data
  .match(regex)
  .map(Number);

console.log(numbers);

旧浏览器不支持JavaScript正则表达式中的查找。你必须使用两个正则表达式

代码语言:javascript
复制
const data = 'VOO2.1315$262.67$86.88$559.88DIS1.94733$104.45$27.77$203.40IWM1.07511$122.55$14.98$131.75DAL5$24.04-$44.26$120.19XOM2$42.46-$18.40$84.92VYM1$77.59$7.15$77.59SBUX1.19403$76.64$15.12$91.51';
const regex = /[a-z](\d+\.\d+)\$/gi;

const numbers = data
  .match(regex)
  .map(item => item.match(/\d+\.\d+/))
  //  or you can use slice instead of regex
  // .map(item => item.slice(1, -1))
  .map(Number);

console.log(numbers);

产出:

代码语言:javascript
复制
Array(25) [ 2.1315, 1.94733, 1.07511 1.19403 ]
票数 1
EN

Stack Overflow用户

发布于 2020-04-21 20:48:40

基本上是找一个字母,后面跟着一些数字,然后是小数点,然后是一些更多的数字。然后,对于这些条目中的每一个,去掉位于第一个位置的字母。

代码语言:javascript
复制
found = data.match(/[a-zA-Z]\d+\.\d+/g).map(m => Number(m.substr(1)));

found是您要寻找的值的数组。

如果您只想要字符串值,就不要使用Number()强制转换。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61352575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档