Regex untuk angka desimal

Gunakan /^-?\d+(?:\.\d+)?$/ untuk memastikan seluruh string adalah angka desimal yang valid. Setiap contoh di bawah sudah diuji dengan pola ini, dan kamu bisa membukanya di Regex Tester dengan contoh yang sudah terisi.

Diperbarui

/^-?\d+(?:\.\d+)?$/
Buka di Regex Tester
MasukanHasil
42✓ Cocok
-3.14✓ Cocok
0.5✓ Cocok
.5✗ Tidak cocok
1.✗ Tidak cocok
1,000✗ Tidak cocok
abc✗ Tidak cocok
+1✗ Tidak cocok

Cara kerja pola

BagianArti
-?Tanda minus opsional
\d+Bagian bilangan bulat
(?:\.\d+)?Titik dan digit desimal opsional

Contoh kode

JavaScript

const re = /^-?\d+(?:\.\d+)?$/;
re.test(value); // true or false

Python

import re

bool(re.fullmatch(r'-?\d+(?:\.\d+)?', value))

PHP

preg_match('/^-?\d+(?:\.\d+)?$/', $value) === 1;

Catatan dan batasan

Izinkan .5 dengan mengubah \d+ menjadi \d* pada bagian bilangan bulat (dan pastikan string tidak kosong).

Pertanyaan yang sering diajukan

Apa regex untuk angka desimal?
/^-?\d+(?:\.\d+)?$/ — pola ini mencocokkan seluruh string. Lihat tabel di atas untuk fungsi tiap bagiannya.
Contoh mana yang cocok?
Dari contoh yang diuji, yang cocok adalah: 42, -3.14, 0.5. Yang lain tidak cocok.
Bagaimana cara menguji regex ini?
Klik “Buka di Regex Tester” — pola, flag, dan teks contoh akan dimuat otomatis, dan kecocokan akan disorot saat kamu mengedit.