Javascript 用于在用户键入和复制粘贴时删除“金额浮动”输入字段中的空白的正则表达式

Javascript 用于在用户键入和复制粘贴时删除“金额浮动”输入字段中的空白的正则表达式,javascript,html,regex,pattern-matching,Javascript,Html,Regex,Pattern Matching,我有一个只接受浮点数的输入字段,例如:10.25我需要正则表达式,用于下面的场景 正则表达式应遵循以下几点 不应接受空间 应只接受一个点(.) 如果用户在输入字段中复制并粘贴金额值,如21 32.44。它应该显示2132.44应该删除的值空间 我使用regex“^[\\d.]+$”实现了这一点,但在复制和粘贴输入字段中的金额值时,它会删除空格后的所有数字 例:2132.44->它只给出21 有人能提供有效的正则表达式吗。你可以试试这个 var input=require("readline-sy

我有一个只接受浮点数的输入字段,例如:10.25我需要正则表达式,用于下面的场景

正则表达式应遵循以下几点

  • 不应接受空间

  • 应只接受一个点(.)

  • 如果用户在输入字段中复制并粘贴金额值,如21 32.44。它应该显示2132.44应该删除的值空间

  • 我使用regex
    “^[\\d.]+$”
    实现了这一点,但在复制和粘贴输入字段中的金额值时,它会删除空格后的所有数字

    例:2132.44->它只给出21

    有人能提供有效的正则表达式吗。

    你可以试试这个

    var input=require("readline-sync")
    var regx= /^\d+(?:\.\d+)?$/
    do{ 
    var num= input.question("Input float number please : ");
    var m= regx.exec(num.trim().replace(/\s+/g,'')) } while(m==null);
    console.log(m[0]);
    
    输出测试:

    Input float number please : dsfd fdsa
    Input float number please : 4324 543. 543 fds
    Input float number please : 432 54.54
    43254.54
    

    我无法添加函数来执行上述语句。需要输入字段中的regex属性。基本上只有一个正则表达式代码来支持所有标准。Regex/^\d+(?:\.\d+)?$/这不支持调用条件。您可以对
    用户输入使用
    prompt()
    ,而不是像这样在
    node.js
    中用于
    同步用户输入的上述脚本的
    readline sync
    模块<代码>var num=提示(“请输入浮点数:”)