iT邦幫忙

0

正規表示只保留數字及其小數點?

各位大哥好..

小弟目前只知道 .replace(/[^\d]/g, "") 是把所有非數字相關的通通去除

然而我寫這樣 .toString().replace(/[^\d]/g, "")

如果一開始給的值是123.456 他就會把小數點給去掉

我想保留小數點的話 我應該怎麼寫比較好

也就是說 我要保留數字但有小數點的數字 其他通通會去除

謝謝 /images/emoticon/emoticon06.gif

驗證有兩位小數的正實數:^[0-9]+(.[0-9]{2})?$
ccutmis iT邦高手 4 級 ‧ 2020-03-24 10:39:34 檢舉
<script>
var tmpstr='IT邦邦忙321456.789012忙邦邦TI';
console.log('原始字串: '+tmpstr);
var myArray = /[0-9]+.[0-9]+/g.exec(tmpstr);
console.log('取得數字: '+myArray[0]); //印出 321456.789012
</script>

1 個回答

1
mlck970677
iT邦新手 5 級 ‧ 2020-03-24 10:31:44
最佳解答

剛好前陣子有寫到可INT也可FLOAT => ^(([1-9]{1}[0-9]{1,}|[0-9]{1}).[0-9]{1,}[1-9]{1}|(([1-9]{1}[0-9]{1,}|[0-9]{1})|([1-9]{1}[0-9]{1,}|[1-9]{1}).0))$
可以在這試試看:https://regexr.com/
01 (X)
0 (O)
1 (O)
10 (O)
0.0 (X)
0.1 (O)
0.10 (X)

我要發表回答

立即登入回答