zoukankan      html  css  js  c++  java
  • JS正则匹配实例邮箱、手机号、电话、货币

    1. 千位符:

    function formatMoney (number, places, symbol, thousand, decimal){
      number = number || 0;
      //保留的小位数 可以写成 formatMoney(542986,3) 后面的是保留的小位数,否则默 认保留两位
      places = !isNaN(places = Math.abs(places)) ? places : 2;
      //symbol表示前面表示的标志是¥ 可以写成 formatMoney(542986,2,"$")
      symbol = symbol !== undefined ? symbol : "¥";
      //thousand表示每几位用,隔开,是货币标识
      thousand = thousand || ",";
      //decimal表示小数点
      decimal = decimal || ".";
      //negative表示如果钱是负数有就显示“-”如果不是负数 就不显示负号
      //i表示处理过的纯数字
      var negative = number < 0 ? "-" : "";
      var i = parseInt(number = Math.abs(+number || 0), 10) + "";
      console.log(i);
      var j = (j = i.length) > 3 ? j % 3 : 0;
      return symbol + negative + (j ? i.substr(0, j) + thousand : "") + i.substr(j).replace(/B(?=(d{3})+(?!d))/g, thousand) + (places ? decimal + Math.abs(number - i).toFixed(places).slice(2) : "");
    }
    console.log(formatMoney(1234567.1234,3));

    https://juejin.im/post/5b026bbb5188256720345bb4

    正则表达式的详解。

    1-2. JavaScriptAPI。

    var formatter = new Intl.NumberFormat('en-US', {
      style: 'currency',
      currency: 'JPY',   //此处为各货币的缩写,如$USD、¥JPY,CAD,EUR,GBP等,都能展示对应的货币显示
      minimumFractionDigits: 2
    });
    
    console.log(formatter.format(12345.5556))//¥12,345.56

    2. 

    /*是否带有小数*/
    function    isDecimal(strValue )  {  
       var  objRegExp= /^d+.d+$/;
       return  objRegExp.test(strValue);  
    }  
    
    /*校验是否中文名称组成 */
    function ischina(str) {
        var reg=/^[u4E00-u9FA5]{2,4}$/;   /*定义验证表达式*/
        return reg.test(str);     /*进行验证*/
    }
    
    /*校验是否全由8位数字组成 */
    function isStudentNo(str) {
        var reg=/^[0-9]{8}$/;   /*定义验证表达式*/
        return reg.test(str);     /*进行验证*/
    }
    
    /*校验电话码格式 */
    function isTelCode(str) {
        var reg= /^((0d{2,3}-d{7,8})|(1[3584]d{9}))$/;
        return reg.test(str);
    }
    
    /*校验邮件地址是否合法 */
    function IsEmail(str) {
        var reg=/^w+@[a-zA-Z0-9]{2,10}(?:.[a-z]{2,4}){1,3}$/;
        return reg.test(str);
    }

    var data = 'windows 98 is ok';

    data.match(/windows (?=d+)/);  // ["windows "]
    data.match(/windows (?:d+)/);  // ["windows 98"]
    data.match(/windows (d+)/);    // ["windows 98", "98"]
  • 相关阅读:
    3种方式提高页面加载速度
    CSS中的层叠、特殊性、继承、样式表中的@import
    jQuery从零开始(二)
    jQuery从零开始(一)
    设计模式
    Vue-cli3脚手架工具快速创建一个项目
    Git上传到码云及其常见问题详解
    eclipse导入本地的svn项目后不能在team提交更新
    js拖拽上传图片
    axure 动态面板制作图片轮播 (01图片轮播)
  • 原文地址:https://www.cnblogs.com/sarah-wen/p/10832728.html
Copyright © 2011-2022 走看看