首页 >后端开发 >php教程 >【正则】怎么写判断提交的用户名中不包含如下特殊字符?求方法

【正则】怎么写判断提交的用户名中不包含如下特殊字符?求方法

WBOY
WBOY原创
2016-06-13 11:58:231611浏览

【正则】如何写判断提交的用户名中不包含如下特殊字符?求方法

本帖最后由 default7 于 2014-05-25 18:39:45 编辑 对提交的注册用户名 $uname 的需求:
1 要求名称可以由中文 英文混合组成,但是中间不能包含有空格
2 不能包含如下 $arr2 中的特殊字符
3 但是可以包含中文的 左右括号 “(” “)”

<br /><?php<br />function checkReg($uname)<br />{<br />/**<br />//写成简短的<br />$arr2 = array(<br />'~', '!', '@', '#', '$', '%', '^', '&', '*', '_', '+', '|', '-', '=', '\\',<br />'{', '}', '[', ']', ':', ';', '"', '\'', '<', '>', ',', '.', '?', '/', '“', '”',<br />'’', '‘', '【', '】', '~', '!', '¥', '……', '——', '、', '《', '》', '。',<br />PHP_EOL, chr(10), chr(13), "\t", chr(32),<br />);<br />**/<br />    $arr2 = array(<br />        '~',<br />        '!',<br />        '@',<br />        '#',<br />        '$',<br />        '%',<br />        '^',<br />        '&',<br />        '*',<br />        '_',<br />        '+',<br />        '|',<br />        '-',<br />        '=',<br />        '\\',<br />        '{',<br />        '}',<br />        '[',<br />        ']',<br />        ':',<br />        ';',<br />        '"',<br />        '\'',<br />        '<',<br />        '>',<br />        ',',<br />        '.',<br />        '?',<br />        '/',<br />        '“',<br />        '”',<br />        '’',<br />        '‘',<br />        '【',<br />        '】',<br />        '~',<br />        '!',<br />        '¥',<br />        '……',<br />        '——',<br />        '、',<br />        '《',<br />        '》',<br />        '。',<br />        PHP_EOL,<br />        chr(10),<br />        chr(13), //\r\n<br />        "\t",<br />        chr(32),<br />    );<br /><br /><br />    foreach ($arr2 as $k) {<br />        //我之前用 preg_match 结果有乱码,全乱了。后来用strpos  (default7#zbphp.com)<br />        if (strpos($uname, $k) !== false) {<br />            $tips = "注册名中不能含有空格、点、逗号等特殊字符!";<br /><br />            return array(false, $tips);<br />        }<br />    }<br /><br />    return array(true, 'ok');<br />}<br />



------解决方案--------------------
if($s == str_replace($arr2, '', $s)) {<br />  //不包含特殊字符<br />}else{<br /> //包含特殊字符<br />}
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn