作者JYHuang (夏天到了,冷不起来了说)
看板Ajax
标题[问题] 用正规化判断中文的问题
时间Tue Jul 13 16:45:08 2010
从网路上找来的例子要判断是否为中文的话
要用str.match(
/^[^\x00-\xff]{0,5}$/gi) (资料库限定10bit..所以是五个中文字元)
可是我又想让10个英文字元也被接受
所以改成了
str.match(
/(^[^\x00-\xff]{0,5}$|^.{0,10}$)/gi)
结果这样变成了10个英文字能过
中文字数却不被限制了 @.@
要怎麽设成 只限 0~5个中文字 或 0~10个字文字呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.39.172.7
1F:推 s25g5d4:/^[^\x00-\xff]{0,10}$/gi 07/13 16:50
2F:→ s25g5d4:我有点不太懂你的意思 限0~5个字 代表1~6也可以对应 07/13 16:51
3F:→ s25g5d4:我有点不太懂你的意思 限0~5个字 代表1~4也可以对应 07/13 16:51
4F:→ s25g5d4:限0~10个字 代表1~9个字也可以对应 那这样不就跟限0~5冲到 07/13 16:52
5F:→ s25g5d4:阿我眼残看错 抱歉 07/13 16:52
6F:推 s25g5d4:因为你用.的关系 .也会match到中文字 07/13 16:58
7F:→ s25g5d4:^[^\x00-\xff]{0,5}$|^\w{0,10}$ 07/13 16:59
8F:→ s25g5d4:\w 可以match到A-Z a-z 0-9和底线 07/13 17:00
9F:→ s25g5d4:如果要纯英文请用[A-Za-z] 07/13 17:01
10F:→ JYHuang:还是放弃...直接独立出来算好了 (太懒是不行的~~ 07/13 17:09