網站搜尋

javascript - 正則表達式用來替換除了數字和小數點之外的所有內容


我有一個文本欄位,需要保持只有文字或小數點。這是我目前用來替換除數字和小數點之外所有內容的程式碼。問題是,我無法找到一個正則表達式來識別其他所有內容。

document.getElementById(target).value = newVal.replace(/\D[^\.]/g, "");

\D 運作良好,但我已經嘗試過 (?!.), (?!\.), [^.], [^\.] 等等…

有關正則表達式的任何建議嗎?該表達式應能識別任何非數字或小數的內容。

謝謝你的幫助

答案#1

使用這個:

document.getElementById(target).value = newVal.replace(/[^0-9.]/g, '');

答案#2

僅移除小數部分可以如下進行:

number.replace(/(\.\d+)+/,'');

這將把 13.6667px 轉換為 13px(保持單位 px 不變)。