繁体   English   中英

JavaScript正则表达式-百分号前的数字

[英]Javascript regular expression - number before percent sign

我有一个字符串说:

 var currentLabel = "Uploading file... 0%"

这是上传开始时的初始状态,我需要在操作运行时对其进行更新。 我需要将该0替换为新数字,但是我不能仅仅得到一个子字符串,因为它最终将变为2位数字,并且长度也将改变...

如果长度恒定,我可以这样做:

var newLabel = currentLabel.substring(0, currentLabel.length - 2) + percent + "%";

我猜我需要一个正则表达式或其他方式。

您可能可以结合使用indexOfsubstring ,但是正则表达式确实使它更简单:

newLabel = currentLabel.replace(/\d+$/, percent + "%");

字符串中没有其他数字了吧?

您也可以再次写字符串..它可能比正则表达式便宜。

可以通过正则表达式和简单的替换来完成

([\S\s]+?[\d]+([%])

替换字符串

$1 "new percentage" $2

/.*([0-9]+)\\%/这样的数字会给您。 但这确实需要很长的路要走。

在这种情况下,您实际上不需要正则表达式:

var currentLabel = "Uploading file... ";
var newLabel = currentLabel + percent + "%";

暂无
暂无

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

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