繁体   English   中英

Javascript正则表达式-将字符串转换为数字

[英]Javascript Regex - Converting string to number

我有要删除任何字母和连字符的字符串。 我有下面的代码,

var s = '-9d 4h 3m',
    t = '1-22';

var p = /[^0-9-]+/g;
    r = s.replace(p, ''),
    a = t.replace(p, '');

console.log(r, a);

在这里,我想删除连字符,如果它们在数字之间,请先省略。 有什么帮助或建议吗?

小提琴

不使用|则更简单 运营商。

string.replace(/(?!^-)\D/g, "")

DEMO

您可以使用以下正则表达式:

var p = /[^0-9-]+|(?:(?!^)-)/g;

小提琴

在控制台日志中,在变量之间加上逗号,但是需要这样的加号。 我也更改了变量a,以便删除-

var s = '-9d 4h 3m';
var t = '1-22';

var p = /[^0-9-]+/g;
var r = s.replace(p, '');
var a = t.replace("-", '');

console.log(r + " " + a);

https://stackoverflow.com/a/1862219/3464552在这里检查这将是一个解决方案。

var s = '-9d 4h 3m',
s = s.replace(/\D/g,'');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM