0

我只是很讨厌正则表达式。我一直在阅读http://www.regular-expressions.info/tutorial.html但我不知道如何写这个。

我有一个包含 2 个数字的字符串(以 0 开头的月份的天数)。我正在尝试从字符串中删除前导 0,但不删除“10”或“20”中的 0。

可能在此处的示例字符串:"01","02","03","10","11","12","20","31"

因为字符串总是一个月中的一天,所以它的长度总是 2 个字符,并且总是在 01 到 31 之间。

目前我正在使用这个(这显然是错误的):

string.replace(/0/,'');

我想要结束的是:“1”而不是“01”,“2”而不是“02”,“10”而不丢失“0”。

希望这足够清楚。

我该如何正确地做到这一点?

4

1 回答 1

1

如果字符串只包含数字,您可以将其转换为整数,例如:

var num = +str;

如果要替换较大字符串的一部分,可以使用\b

str.replace(/\b0+\B/g, '');

例子:

"i have 000100 and 0020!".replace(/\b0+\B/g, '')

回报:

"i have 100 and 20!"
于 2013-02-07T03:20:53.047 回答