Jquery 正则表达式,只允许字符或单词后有一个空格

Jquery 正则表达式,只允许字符或单词后有一个空格,jquery,regex,Jquery,Regex,这就是我到目前为止所做的 $('.name').keyup(function () { var $th = $(this); $th.val($th.val().replace(/[^a-zA-Z' ]+( [A-Za-z' ]+)*$/g, function (str) { return ''; })); }); 上面的表达式允许我输入A-Z和“and”和空格。但我只想在一个字符或单词后面留一个空格 Ex. Hello World is ok but

这就是我到目前为止所做的

$('.name').keyup(function () {
    var $th = $(this);
    $th.val($th.val().replace(/[^a-zA-Z' ]+( [A-Za-z' ]+)*$/g, function (str) {
        return '';
    }));
});
上面的表达式允许我输入A-Z和“and”和空格。但我只想在一个字符或单词后面留一个空格

Ex. Hello World is ok
but Hello  World should not be accepted.

或者,您可以简单地替换重复的空格:

str.replace(/[ ]{2,}/, ' ');

或者,您可以简单地替换重复的空格:

str.replace(/[ ]{2,}/, ' ');

简单的方法可能更好。只需将重复的空格替换为单个空格:

.replace(/\s+/, ' ')

简单的方法可能更好。只需将重复的空格替换为单个空格:

.replace(/\s+/, ' ')

在最内部的代码部分中,尝试将“替换(/[^a-zA-Z']+([a-zA-Z']+)”替换为“替换(/[^a-zA-Z']+([a-zA-Z']+)”


我从这篇文章中得到了这个提示:所以你可能也想读一下。

在你最内部的代码部分,尝试将“替换(/[^a-zA-Z']+([a-zA-Z']+)”替换为“替换(/[^a-zA-Z']+([a-zA-Z']+)”

我从这篇文章中得到了这个提示:所以你可能也想读一下。

试试这个:

$('.name').keyup(function() {
    var $th = $(this);
    $th.val($th.val().replace(/(\s{2,})|[^a-zA-Z']/g, ' '));
    $th.val($th.val().replace(/^\s*/, ''));
    });
试试这个:

$('.name').keyup(function() {
    var $th = $(this);
    $th.val($th.val().replace(/(\s{2,})|[^a-zA-Z']/g, ' '));
    $th.val($th.val().replace(/^\s*/, ''));
    });

您只需去掉括号末端的空格即可

[^a-zA-Z']+( [A-Za-z']+)
虽然我会考虑把空间放在第一个单词的末尾,这样你就可以实时键入。

$('.name').keyup(function() {
        var $th = $(this);
        $th.val( $th.val().replace(/([^a-zA-Z'] )+([A-Za-z']+)*$/g, function(str) {  return ''; } ) );
    });

你只需要去掉括号末端的空格

[^a-zA-Z']+( [A-Za-z']+)
虽然我会考虑把空间放在第一个单词的末尾,这样你就可以实时键入。

$('.name').keyup(function() {
        var $th = $(this);
        $th.val( $th.val().replace(/([^a-zA-Z'] )+([A-Za-z']+)*$/g, function(str) {  return ''; } ) );
    });

我仍然可以添加多个空格。抱歉,这是我的错误,我粘贴了错误的代码,请重试。当我输入字符时,例如,./]空格在开始处剩余…尝试输入。/]\n您将在开始处找到1个空格…您在那里..我的问题可以排序吗!是的,其他事情都很好。我想知道如何删除开始处的空格…我仍然可以添加多个空格。抱歉,这是我的错误,我粘贴了错误的代码,请重试。当我输入字符时,例如,./]空格在开始处剩余…尝试输入。/]\n您将在开始处找到1个空格…您在那里..我的问题可以排序吗!是的,其他事情都很好只是想知道如何删除begini中的空格ng..用户不应能够添加,./][这些字符也是..输入2个空格后,两个空格都将被删除..我如何才能只删除用户输入的额外空格。此外,输入仅限于a-z和“用户不应能够添加,./][这些字符也是…输入2个空格后,两个空格都将被删除..如何删除用户输入的额外空格。输入也将限于a-z和'