用 jQuery 替换字符串中的字母字符和空格

Replacing alpha characters and spaces in string with jQuery

本文关键字:字符 空格 jQuery 替换 字符串      更新时间:2023-09-26

>我有一个只允许数字的字符串

$(this).val($(this).val().replace(/([a-zA-Z])/g, ""));

如何添加一个空格,以便在一个字符串中以相同的方式将其替换为"?

要仅匹配非数字,应执行[^0-9]而不是[a-zA-Z](这称为否定字符类)。

如果您希望输入仅允许数字,则使用HTML5,您只需执行<input type="number">即可。为了获得更广泛的支持,有很多JavaScript解决方案,看看如何使用jQuery在HTML输入框中只允许数字(0-9)?正如评论中所建议的。

只需将空格添加到正则表达式中:

  "asfasd asdf asdf".replace(/([a-zA-Z ])/g, "");

收益 率:

  ""

编辑:我误解了你的问题。如果要阻止每个输入但数字,请使用此正则表达式:

function removeNotAllowedChars($input) {
   $input.val($input.val().replace(/[^0-9]/g, ''));
}
$('#myText')
   .keyup(function() {
     var $input = $(this);
     removeNotAllowedChars($input);
   })
   .change(function() {
     var $input = $(this);
     removeNotAllowedChars($input);
   });

如果用户键入字符并在焦点更改后粘贴输入,则使用这些脚本会立即删除输入。在这里试试: JSFiddle

使用 's - 匹配单个空格字符,包括空格、制表符、表单换行符、换行符。相当于

正则表达式指南