một số nguyên không âm là gì?
Số nguyên không âm số là "số nguyên 0 hoặc dương".
Nguồn: http://mathworld.wolfram.com/NonnegativeInteger.html
Nói cách khác, bạn đang tìm kiếm để xác nhận một số nguyên không âm.
Câu trả lời ở trên không đủ vì chúng không bao gồm các số nguyên như -0
và -0000
, về mặt kỹ thuật, sau khi phân tích cú pháp, trở thành số nguyên không âm. Các câu trả lời khác cũng không xác thực số nguyên với +
ở phía trước.
Bạn có thể sử dụng regex sau để xác thực:
/^(\+?\d+|-?0+)$/
Try it Online!
Giải thích:
^ # Beginning of String
( # Capturing Group
\+? # Optional '+' Sign
\d+ # One or More Digits (0 - 9)
| # OR
-? # Optional '-' Sign
0+ # One or More 0 Digits
) # End Capturing Group
$ # End of String
Các trường hợp kiểm tra sau trở thành sự thật: -0
, -0000
, 0
, 00000
, +0
, +0000
, 1
, 12345
, +1
, +1234
. Các trường hợp kiểm tra sau đây trả về false: -12.3
, 123.4
, -1234
, -1
.
Lưu ý:Regex này không hoạt động cho chuỗi số nguyên được viết trong ký hiệu khoa học.
Nguồn
2018-02-27 01:45:54
Tôi nghĩ câu hỏi này tốt hơn nên là nhận xét về câu trả lời đó ... và phải được trả lời ở đó bởi chính @Karim. – Bergi
Lưu ý rằng mã này không hoàn toàn chính xác. Ví dụ, nó xác nhận một chuỗi như '000 ... (10.000 lần) .. 000' mà hầu như không phải là" số ". – georg