在typescript angular 2中使用regex时,如果出现负小数,如何阻止用户输入逗号?

kokeuurv  于 2023-01-10  发布在  TypeScript
关注(0)|答案(1)|浏览(117)

我有一个为所有字段共享的组件指令,但我想为特定字段添加一个规则,该字段阻止用户输入逗号,我在文件ts中有以下代码,但它只满足正小数的条件(例如:2323.34343),否则为大小写负小数(例如:-3232.323)我无法输入减号,因为正则表达式检查函数与第一个字符为减号不匹配。我该如何解决?请帮助我,非常感谢!!!

private el: HTMLInputElement;

  private check(value: string) {
            const regExpString = "^-?\\s*((\\d+(\\.\\d{0,5})?)|((\\d*(\\.\\d{1,5}))))\\s*$";
            return String(value).match(new RegExp(regExpString));
    }
@HostListener("keydown", ["$event"])
    onKeyDown(v) {
            const value: string = this.el.value;
            const next: string = value.concat(v.key); 
            console.log(this.check(next))
            if (next && !this.check(next)) { 
                v.preventDefault();
            }
    }```
tkclm6bt

tkclm6bt1#

通过HTML文件-使用“模式”对HTML文件中的数字或字母应用验证。
通过TS文件-使用ASCII值进行逗号验证。如果用户输入逗号,将匹配逗号的ASCII代码。否则使用。

相关问题