#87 判断美元符号格式


  • 0
    administrators

    完成一个函数 isUSDFormat 返回 true/false 来判断一个字符串是否符合美元格式:

    1. $ 开头
    2. 如果是小数,保留两位小数;如果不是小数则不显示小数部分
    3. 整数部分从小数点上一位开始每隔三位用 , 分割开来
    4. 如果整数部分从数字 0 开始,则只会显示一位 0

    例如:

    isUSDFormat('$1') // => true
    isUSDFormat('$1.0') // => false
    isUSDFormat('$100,000.00') // => true
    isUSDFormat('$0,000.00') // => false
    isUSDFormat('$0.00') // => true
    isUSDFormat('$11,23,345.33') // => false
    isUSDFormat('$1,123,345.33') // => true
    

  • 0
    管理员

    const isUSDFormat = str => (/^\$([1-9]\d{0,2}(,\d{3})*|0)(\.\d{2})?$/).test(str)
    

  • 0

    和上面的答案出奇地一致,看来正则没多少种写法

    const isUSDFormat = (str) => /^\$(0|([1-9]\d{0,2}(,\d{3})*))(\.\d{2})?$/.test(str)
    

登录后回复
 

与 ScriptOJ 的连接断开,我们正在尝试重连,请耐心等待