js 正则表达式 验证 a/b/c 格式的类型数据,js正则表达式


首先说下 我的需求

我要对一个文本框中输入的内容格式做出要求

内容 必须是

“字符串”
“字符串”+“/”+“字符串”
“字符串”+“/”+“字符串”+"/"+“字符串”
“字符串”+“/”+“字符串”+"/"+“字符串”+"/"+“字符串”
。。。
字符串数量没有限制
字符串 是由 字母(大小写都可以)、数字、下划线组成

正则表达式 写成:/^\w+(\/\w+)*$/
这样就OK了

一个JS正则表达式进行数据验证

<html xmlns="www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
例子1
<input type="text" id="txt" onkeyup="check1(this)"/>
例子2
<input type="text" id="txt" onkeyup="check2(this)"/>
<div id="d"></div>
</body>
<script language = "javascript">
var txt = document.getElementById("txt");
var p1 = /[^\d\.]/g;
var p2 = /(\.\d{2})\d*$/g;
var p3 = /(\d{3})\1*/g;
var p4 = /(\.)(\d*)\1/g;

function check1(o) {
o.value = o.value.replace(p1, "").replace(p2, "$1").replace(p4,"$1$2");
}

function check2(o) {
check1(o)
o.value = fmoney(o.value)
}

function fmoney(s) {
var flag;
var arr = s.split(".");
var l = arr[0].split("").reverse();
var t = ""
for (i = 0; i < l.length; i++) {
t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");
}
if (arr.length == 2) return t.split("").reverse().join("") + "." + arr[1];
else return t.split("").rever......余下全文>>
 

js 正则表达式问题 匹配a/b/c这样的格式

/^[a-zA-Z0-9_]+(/[a-zA-Z0-9_]+)*$/
试试这个
 

评论关闭