簡體   English   中英

Javascript-除去正則表達式定義的內容之外的所有內容?

[英]Javascript - Strip everything except that defined by a regular expression?

是否可以在每個keyUp事件中從文本框中剝離除正則表達式定義的內容以外的所有內容?

例如,我有一個文本框和regex ^[a-zA-Z0-9]+$ 每當用戶輸入(或粘貼)字符時,它將刪除該正則表達式中未包含的所有字符。

HTML:

<input />

Javascript:

var input = document.getElementsByTagName('input')[0];
input.onkeydown = function () {
 input.value = input.value.match(/[a-zA-Z0-9]+/g).join();
}

您可以使用帶有負字符類的regexp替換(我也縮寫了該字符,使其不區分大小寫,並進行了全局替換)

var input = document.getElementById('sandbox');    
input.onkeyup = function(){
  input.value = input.value.replace(/[^a-z0-9]/ig,'');
}

實際上http : //jsfiddle.net/theprawn/GvbKY/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM