求一个对数字字符串处理的正则表达式

pilishou 2012-08-25 10:29:55
要求是这样的有一个字符串数字(信用卡卡号)
1111222233334444
用户会输入这样的一串卡号为了展示方便我想在输入的时候检测,如果是输入了4个数字后做一次处理,增加一个短横线“-”
比如
最终结果是:1111-2222-3333-4444
那在我输入的时候我会动态的用这个正则表达式去检测

第一步:把原有的“-”全部先干掉
第二步:根据正则表达式重新按4位插入“-”

这样做的好处就是在输入的过程中用户可以进行任意修改,修改后自动的重新按4位隔开
小弟正则表达式不熟,请教高手

...全文
48 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
<input id="Text1" type="text" onkeypress="return IsNum(event)" />
<script language="javascript" type="text/javascript">
function IsNum(e) {
var k = window.event ? e.keyCode : e.which;
if (((k >= 48) && (k <= 57)) || k == 8 || k == 0) {
var t = $("#Text1").val();
t = t.replace(/\-/g, "");
t = t.replace(/(\d{4})/g, "$1-");
$("#Text1").val(t);
} else {
if (window.event) {
window.event.returnValue = false;
}
else {
e.preventDefault(); //for firefox
}
}
}
</script>
泡泡鱼_ 2012-08-26
  • 打赏
  • 举报
回复
<input type="text" id="test" onkeyup="a(this)"/>

function a(o)
{
var c=o.value.replace(/[\-]/g,'');//获取原始输入内容
o.value=c.length>0?c.match(/[\d]{4}|[\d]{1,}/g).toString().replace(/[\,]/g,'-'):c;
}
课程目标:学习Java语言中字符串相关的知识、字符编码常识和正则表达式的使用,并完成案例前导课程:《Java工程师必学系列课程》前4部课程内容:本课程是《Java工程师必学系列课程》的第5部分,主要讲解Java语言中字符串相关知识、字符编码常识和正则表达式的使用。本课程涉及的主要内容可以分为四部分:一、String、StringBuffer和StringBuilder类基本常识、基本原理和使用技巧二、字符编码常识三、Java语言正则表达式的详细语法和使用技巧四、实战案例课程说明:在开发Java程序的过程中,最常用的类莫过于字符串相关的类。可以毫不夸张的说,任何一个Java程序,都离不开对字符串保存和处理。很多学员对字符串的理解只是处于比较粗浅的阶段。殊不知,如果对字符串处理的不好,会影响到软件的运行效率。本课程专门讲解字符串相关的知识,将从字符串的存储方式、底层的运行方式等各方面深入讲解其中的原理和技巧。此外,对字符串进行更高级的处理,又要用到正则表达式的相关知识。正则表达式广泛应用于各种与字符串处理相关的场合。它是一套独立的语言系统,经过几十年的完善和发展,现在已经非常的强大,并且形成了国际标准。各种高级编程语言,都实现了自己的表达式引擎。本课程详细的讲解了Java语言中正则表达式的语法和使用技巧。掌握了正则表达式,对编程水平的提高有非常大的帮助!同时,本课程在最后一部分,安排了非常精彩的、完整的实战案例,通过实战的形式切实帮助学员提高解决具体问题的能力!预期效果:认真学习完本课程,学员可以掌握字符串处理正则表达式相关的系统知识,并能提高实际的编码水平。环境配置要:学习本课程需安装JDK1.8或更高版本的JDK,以便程序能正确运行,建议使用IntelliJ IDEA 2019.1.2或更高版本的开发工具。    因有合作协议约束,《穆哥学堂》只提供PDF版本的课件!

87,901

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧