登录
立即注册
首页
>
绿虎论坛
>
历史版块
>
编程
>
PHP
>
源码
正则求解
自在鬼
@Ta
2013-08-19
18431点击
[0-9a-zA-Z]这个正则表达式什么作用?是匹配数字或字母?那么如果我要限制一个字符串的内容只能是数字或字母,该怎么写?
隐藏样式
查看源码
回复列表(44|
隐藏机器人聊天
)
1
月初
@Ta
/ 2013-08-19 /
样
/
源
表示任一个数字,大,小写字母
加上匹配次数就可以达到你的要求了。
2
月初
@Ta
/ 2013-08-19 /
样
/
源
@
戒撸
3
自在鬼
@Ta
/ 2013-08-19 /
样
/
源
@
月初
,我的要求是如果字符串里出现其它字符就返回false
4
自在鬼
@Ta
/ 2013-08-19 /
样
/
源
@
月初
,/[0-9a-zA-Z]{2,12}/Ui这样?
5
月初
@Ta
/ 2013-08-19 /
样
/
源
/[0-9a-zA-Z]{2,12}/Ui
表示由任意数字,大,小写字母组成的长度在2-12之间的字符串。
你觉得和你的要求符合,那它就是这样的。
6
月初
@Ta
/ 2013-08-19 /
样
/
源
个人认为你如果只是单纯的验证一个字符串是否符合你的要求。就没必要加全局修饰符。
7
自在鬼
@Ta
/ 2013-08-19 /
样
/
源
@
月初
,限制字符串的内容和判断字符串中是否含有目标字符是两码事,我想问这两种各应该怎么写
8
月初
@Ta
/ 2013-08-19 /
样
/
源
/[0-9a-zA-Z]{2,12}/
字符串只能含有数字,英文字母。
且长度为2-12。
它只能匹配'jdmw26'
/[0-9a-zA-Z]{2,12}/Ui,
在某字符串的一部分必须包含由数字,英文字母。且长度为2-12。
它可以匹配'jdmw26'
也可以匹配'字符jdmw26'
9
月初
@Ta
/ 2013-08-19 /
样
/
源
@
戒撸
10
月初
@Ta
/ 2013-08-19 /
样
/
源
额,忘了写了.应该是这样。/^[0-9a-zA-Z]{2,12}$/
字符串只能含有数字,英文字母。且长度为2-12。
它只能匹配'jdmw26'
/[0-9a-zA-Z]{2,12}/Ui,
在某字符串的一部分必须包含由数字,英文字母。且长度为2-12。它可以配'jdmw26'也可以匹配'字符jdmw26'
11
月初
@Ta
/ 2013-08-19 /
样
/
源
12
2
@Ta
/ 2013-08-19 /
样
/
源
@
戒撸
,我给你所需要的,比如注册时用户名只能为英文。
if(!preg_match('/[a-zA-Z]{4,16}/',$_POST['user'])){
echo '用户名必须为长度4-16的英文!';
}
13
月初
@Ta
/ 2013-08-19 /
样
/
源
12楼的答案,会让'world世界'这样的字符串仍能注册成功。看10楼
@
齐子
@
戒撸
14
2
@Ta
/ 2013-08-19 /
样
/
源
@
月初
,呵呵,你说笑了
15
月初
@Ta
/ 2013-08-19 /
样
/
源
@
齐子
我想是的,如果你忘了加定界符的话。
16
2
@Ta
/ 2013-08-19 /
样
/
源
@
月初
,动手试试吧。。。亲!
17
月初
@Ta
/ 2013-08-19 /
样
/
源
弱弱的说下,事实上,我已经试过了。事实貌似说了和你相反的答案…
@
齐子
18
2
@Ta
/ 2013-08-19 /
样
/
源
@
月初
,你的源码我看看
19
自在鬼
@Ta
/ 2013-08-19 /
样
/
源
@
齐子
,我本来就是那样的,不过用户名中加上问号竟然注册成功了
<
1
2
3
>
添加新回复
回复需要
登录
。
加上匹配次数就可以达到你的要求了。