如何检查数字是否以“ 0”开头,以便我将其删除?正则表达式对我来说是一个黑暗的地方。
谢谢。
var val = $('.count-number').find('.row .num').text();
// check if val is starting with 0 and if so remove it (example 020 will change to 20)
答案 0 :(得分:3)
如果您只想解析整数或浮点值:
val = parseInt(val, 10);
// or
val = parseFloat(val);
否则,如果要专门删除前导零:
if(val[0] === '0'){
val = val.substring(1);
}
鉴于问题的描述,此处不需要使用正则表达式,但无论如何:
val = val.replace(/^0/, '');
或者,要删除字符串开头的任意数量的 0:
val = val.replace(/^0+/, '');
答案 1 :(得分:0)
您可以使用下面的代码行作为参考,而无需使用正则表达式
var a = 031;
if (a.toString().indexOf('0')==0) {
a = parseInt(a.replace('0', ''));
}
或者您也可以使用
var a = '0123';
var intA = parseInt(a);
答案 2 :(得分:-1)
您可以使用正则表达式跳过/^0?(.*)/
的第一个零,并使用索引为1
的捕获组。
$('#removezero').click(() => {
$('.count-number').find('.row .num').each(function() {
var $this = $(this); // Assign the current .item to $this so we can manipulate it
var text = $this.text(); // Get the text
var re = /^0?(.*)/; // A regular expression that skips the first single zero if one occurs
var myArray = re.exec(text); // Run the regular expression
var withZero = myArray[0] // 0 index contains entire matched string.
// assigned here just for demonstration purposes
var withoutZero = myArray[1];
// Do whatever you want with the withoutZero.
$this.text(withoutZero); // Here, we just replace the text without the zero.
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="removezero">remove zero</button>
<div class="count-number">
<div class="row">
<p class="num">012</p>
</div>
<div class="row">
<p class="num">23</p>
</div>
<div class="row">
<p class="num">045</p>
</div>
<div class="row">
<p class="num">0067</p>
</div>
</div>
如果要跳过所有的前零,则应改用/^0*(.*)/
。