JavaScript正则表达式实例

本文介绍了一组实用的JavaScript正则表达式用法,包括验证正整数、电话号码及货币数值等常见场景,并提供了格式化银行卡号的具体实现方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JS正则基础知识:[url]http://www.blogjava.net/onejavaer/articles/79070.html[/url]
以下为相关用法:
/**
* 正整数,0
* @param num
* @returns
*/
function checkNum(num){
var regExpCheck = new RegExp("^[1-9]\\d*|0$");
return regExpCheck.test(num);
}
/**
* 电话号码
* @param phone
* @returns
*/
function checkPhone(phone){
var regExpCheck = new RegExp("^(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$");
return regExpCheck.test(phone);
}
/**
* 整数,float
* @param money
* @returns
*/
function checkMoney(money){
var regExpCheck = new RegExp("^[1-9]\\d*\\.\\d*|0\\.\\d*|[1-9]\\d*$");
return regExpCheck.test(money);
}
/**
* 格式化银行卡号
* 4555 6888 5999 4777 888
* @param BankNo
*/
function formatBankNo (BankNo){
if (BankNo.value == "") {
return;
}
var account = new String (BankNo.value);
account = account.substring(0,23); /*帐号的总数, 包括空格在内 */
/* alert("init:"+account) */
/* 对照格式 */
if (account.match ("[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{3}") ==null){
/* alert("match:"+account.match ("[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{3}")); */
var accountNumeric = "";
var accountChar = "";
var i;
for (i=0;i<account.length;i++){
accountChar = account.substr (i,1);
if (!isNaN (accountChar) && (accountChar != " ")) {
accountNumeric = accountNumeric + accountChar;
}
}
account = "";
for (i=0;i<accountNumeric.length;i++){ /* 可将以下空格改为-,效果也不错 */
if (i == 4) account = account + " "; /* 帐号第四位数后加空格 */
if (i == 8) account = account + " "; /* 帐号第八位数后加空格 */
if (i == 12) account = account + " ";/* 帐号第十二位后数后加空格 */
if (i == 16) account = account + " ";/* 帐号第十六位后数后加空格 */
account = account + accountNumeric.substr (i,1);
}
/* alert("end:"+account) */
}
else
{
account = account.substring (1,5) + "-" + account.substring (6,10) + "-" + account.substring (14,18) + "-" + account.substring(18,22)+ "-" + account.substring(22,25);
/* alert("else:"+account) */
}
if (account != BankNo.value) {
BankNo.value = account;
}
}

银行卡号格式化用法:
<input type="text" id="accountNum"  name="accountNum"  maxlength="24" style="width:200px" onkeyup="formatBankNo(this)" onkeydown="formatBankNo(this)" placeholder="账号不能为空" vld="{number:true,required:true}"/>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值