检查最后键入的字符是否为空格

Check if last typed character was space

本文关键字:是否 空格 字符 最后 检查      更新时间:2023-09-26

如果最后键入的字符是空格,我如何在ng更改函数内部进行检查?ng trim必须设置为true。

我厌倦了去上一次打印的字符

myStr.substr(myStr.length - 1)

但当我把它比作"或其他什么东西时,它并不起作用。当最后一个字符是空格时,我必须增加一个计数器,但我等不及另一个了。

编辑:我厌倦了使用ng trim来计算空格(所以这是不可能的),所以当ng trim设置为default-true时,这个问题的答案很好。

您可以通过以下正则表达式检查文本值是否以空格结尾:/'s$/

/'s$/表示字符串末尾的空白。's也包括选项卡(''t)如果您只需要空间使用:/ $/

JavaScript

var myStr = "some random string ";
if(/'s$/.test(myStr)) {
   // string contains space at last
} else {
   //string does not contain space at last
}       

使用String.protype.substr(start,from)

var str = "lego ";
str.substr(str.length-1, str.length-2)===" "
> true

或者更好地使用String.protype.endsWith(value)

var str = "lego ";
str.endsWith(" ");
> true

HTML

<input ng-model="vm.value" ng-change="vm.onChange()">

JS-

vm.value = '';
vm.counter = 0;
vm.onChange = function () {
    if (vm.value[vm.value.length - 1] === ' ') {
        vm.counter++;
    }
};