js 正则 与 字符截取

参考语法 : http://blog.didispace.com/regular-expression-1/
工具生成各种语言 :http://tools.jb51.net/regex/create_reg
语言 : js
需求 : 获取正负数的带有小数点的数字字符

var pattern = /(-)?\d+[//.]\d+/;
var str = "$-1234.34";
var result=str.match(pattern);
if(result && result.length>0){
  //判断下然后才显示比较好
  console.log(result[0]);
}

测试结果:

var str = "$1234.34";
VM763:6 1234.34

var str = "$-1234.34";
VM766:6 -1234.34

截取字符操作: replace

var str="¥12342.5";
var result=matchMoney(str);
console.log("结果为  :  ",result);

function matchMoney(money){
  var arr=["¥","¥","$","€","R$","£"];
  var result = money;
  for(var k in arr){
     if(money && money.indexOf(arr[k])==0){
	  result=str.replace(arr[k],"");
	  break;
     }
  }
  return result;
}

replaceAll例子:

var str="¥¥¥¥12342.5 - ¥¥¥¥45.89";
var result=matchMoney(str);
console.log("结果为  :  ",result);

function matchMoney(money){
  var arr=["¥","¥","$","€","R$","£"];
  var result = money;
  for(var k in arr){
     if(money && money.indexOf(arr[k])> -1){
      //result=str.replace(arr[k],"");
      result=result.replace(new RegExp(arr[k],"gm"),"");
     }
  }
  return result;
}

replaceALL方法:

String.prototype.replaceAll  = function(s1,s2){     
  return this.replace(new RegExp(s1,"gm"),s2);     
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值