求一段 jquery / javascript 正则表达式

想限制文本框textchange时触发,条件:不能输入;号和中文的逗号,文本框第一和最后一个位置不能是逗号,2个逗号,之间不能为空,也不能只输入空格键.处理方式alert... 想限制文本框
text change 时触发,
条件 :
不能输入 ;号 和中文的逗号 ,
文本框第一和最后一个位置不能是逗号 ,
2个逗号 , 之间不能为空 ,也不能只输入空格键 .
处理方式 alert error message
高手帮帮忙~~ 新年快乐 ^.^
展开
 我来答
不二进制
2013-02-11 · TA获得超过749个赞
知道小有建树答主
回答量:441
采纳率:50%
帮助的人:315万
展开全部
<script>
function txtChange(val){
var flag=0;
switch(true){
case Boolean(val.match(/\;|\,/)):
case Boolean(val.match(/(^\,)|(\,$)/)):
case Boolean(val.match(/\,[\s]*\,/)):
flag=1;
}
if(flag)
alert("error message");
}
</script>
<input type="text" onchange="txtChange(this.value);" />
来自:求助得到的回答
_____God_____
2013-02-11 · TA获得超过1763个赞
知道小有建树答主
回答量:599
采纳率:0%
帮助的人:391万
展开全部
你要split这个字符串吧?呵呵,稍等我试试

初步试验如下:
/^[^\,^\.^\s].+[^\,^\.]$/gi.test('x,x,a')

第二次改进。家里来人了,先这样哈。
/^[^\;\,\s][^\s]+[^\;\,]$/gi.test('x,,')

第三次改进,被逼放鞭炮回来。
/^[^\;\,\,\s][^\s\,\;]+[^\;\,\,]$/gi.test('x,1,2')
更多追问追答
追问
搞不定丫!
我不常用,你看看我有些错吗? 我怎么输入都是return false 丫!
public bool Isvalidemail(string a)
{
bool str = System.Text.RegularExpressions.Regex.IsMatch
(a, @"/^[^\,^\.^\s].+[^\,^\.]$/gi.test('x,x,a')");
if (str == false)
{
return false;
}
return true;
}
追答
老大你的是c#的代码,我给的JS的,要C#的话,就得。。这样:
^[^\\;\\,\\,\\s][^\\s\\,\\;]+[^\\;\\,\\,]$

唉,搞了半天没想到没选我,被性能缓慢的搞定的,暗草。
/^[^\;\,\,\s][^\s\,\;]+[^\;\,\,]$/

这段JS是正解,希望有人遇到相同的问题,可以解决。
以后再也不回答这种问题了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式