js 正则 急,在线等。。

来源:百度知道 编辑:UC知道 时间:2024/05/11 16:38:09
帮我写个正则,格式如下
a=1||b=2||c=3或者a=1 这么两种情况
就是变量=值,两个表达式之间用||阁开。变量要求第一位是字母,后面的\w,值的话\w就行了。
一定不能出现 a=1||b=2||c=3|| 这样的情况,谢谢!
2楼的朋友,首先感谢你很热心帮我解决问题,可能是我表达的不清楚吧,我用别的办法解决了这个问题,但是不是纯正则.给你看下我写的:
/^([a-zA-z][^=\|\|]*=[^=\|\| ]*(?:|\|\|))+$/;
这个表达式可以匹配adf=435435 和werer=sdrfs34||sdfsdf=werwe234@serew.5645|| 这么2种情况,我说的a=1只是来举例子,=左边第一个字母要是数字,后面随意,右边是任意数字字符,如果有多个的话这样的表达式用||分阁,只有一个表达式的情况也是允许的,所以我需要把我werer=sdrfs34||sdfsdf=werwe234@serew.5645||这种情况下的最后一个||去掉,但我不会...请大家教我

s1 = "[a-z]+[=]\\w+[|][|][a-z]+[=]\\w+[|][|][a-z]+[=]\\w+"
s2 = "[a-z]+[=]\\w+"
// s1||s2

如果就两种情况的话
用if可以吗?
if(Str==("a=1||b=2||c=3")||("a=1")){
....
}else{}

呵呵 误解了
<script langurage=javascript>
function c(s){
var regex=/^[a-zA-Z]{1}+[=]{1}+[0-9]{1}+[||||]{1}$/;
//这个是验证 字母(匹配1次)=(匹配1次)数字(匹配1次)||(匹配1次)
//如果要是a=1||b=2||c=3个的 就直接复制三次
// /^[a-zA-Z]{1}+[=]{1}+[0-9]{1}+[||||]{1}^[a-zA-Z]{1}+[=]{1}+[0-9]{1}+[||||]{1}^[a-zA-Z]{1}+[=]{1}+[0-9]{1$/
//那个就不说了 之后两个 或 一下就好了
if(regex.test(s.value))
alert("a");
else
alert("b");
}
</script>
<form>
<input type=text name=a value="" onBlur="c(this);">
</fom>