s = s.match(/\d+(?:\.\d+)?元/)
// 如果没有匹配项,会返回空字符串
return s ? s[0] : ''
}
var price = getPrice('龙马仕 劲爽清透洁面乳120g*2支 天猫19.9元包邮')
alert(price) // 19.9元
只是double类型吗?保留几位小数?这个可以验证带小数部分的小数和不带小数点的整数
<script>
function verify(node)
{
var str = node.value
if(str.match(/^(:?(:?\d+.\d+)|(:?\d+))$/)) alert('match')
else alert('not match')
}
</script>
<input type=text id='txt' />
<input type=button onclick="verify(document.getElementById('txt'))" />
用正则就可以了。
//将不匹配价格格式的字符串用空替换掉var getPrice = function(str){
return str.replace(/[^¥\d+\.?\d$]/g,"")
}
var oStr = "一斤¥1300装起盒子"
console.log(getPrice(oStr)) // ¥1300