❶ js 正則 只能輸入英文和數字,以及鍵盤上有的符號。 不能輸入[空格][#][%]
為了滿足只能輸入英文和數字,以及鍵盤上有的符號,而不能輸入空格、#、%以及其他全形和中文字元的需求,可以使用如下正則表達式:
var reg = /[^ #%\x00-\xff]/;
這個正則表達式的含義是:^ 表示否定匹配,即匹配除了後面括弧內定義的字元之外的所有字元。#、%、空格是直接列出的字元,\x00-\xff 是一個范圍,表示從0x00到0xff的128個ASCII字元,這其中包括了全形字元和中文字元。
如果想要更進一步簡化輸入,可以使用正則表達式 /[^a-zA-Z0-9!@#$%^&*()_=+{}|:">?]/,這個表達式只允許英文大小寫字母、數字以及常見的鍵盤符號,而不包括空格、#、%以及其他特殊符號。
需要注意的是,正則表達式的實現方式可能會根據不同的編程環境和語言有所不同,上述示例基於JavaScript環境。此外,在實際應用中,還需要結合業務邏輯進行適當的處理,例如在輸入框的onkeyup或onblur事件中調用正則表達式進行驗證和處理。
在開發過程中,可能還會遇到一些特殊符號需要處理,如製表符、換行符等,這些符號的處理方式可以參考正則表達式的特殊字元集,例如:\t(製表符)、\n(換行符)、\r(回車符)等,可以根據需要加入到正則表達式中進行過濾。
最後,為了確保用戶體驗,當用戶輸入不符合規則的字元時,可以給予即時反饋,比如提示用戶只能輸入特定的字元集,並提供一個示例輸入,幫助用戶更好地理解規則。
在實際項目中,還需要考慮多語言環境,確保正則表達式能夠正確地識別和過濾所有語言的輸入,避免因為語言差異導致的輸入錯誤。
此外,對於一些特殊符號,如貨幣符號、版權符號等,可能需要根據具體需求進行處理,可以考慮使用Unicode范圍來定義這些符號,以實現更精確的過濾。
總結來說,通過合理地使用正則表達式,可以有效地實現對輸入內容的過濾和驗證,提高系統的健壯性和用戶體驗。
❷ Javascript:匹配所有「\r\n」的正則表達式,就是,所有的「回車換行符」,進行替換
$("#caption").val() = caption.replace(/(\r\n)|(\n)/g,'<br>');