匹配用户名的asp正则表达式(包括中文)
作者:admin 日期:2009-11-02
求ASP 用户名 表达式
用户名长度在2-20字符之间,由中文/大小写字母/数字/中划线-/下线线_组成。
这个问题不算难,只要下边一行核心代码就能搞定:
"^[-_a-zA-Z0-9u4e00-u9fa5]{2,20}$"
关键是没有使用过ASP语言。按此页的提示,设置了ASP环境。查询了一些在线的入门级ASP教程之后,解答如下:
XML/HTML代码
- <form action="verify.asp" method="post">
- 姓名:
- <input name="name" type="text" />
- <input name="Submit" type="submit" value="提交" />
- <input name="Submit2" type="reset" value="重置" />
- form>
它调用以下verify.asp文件:
ASP/Visual Basic代码
- <%
- Function RegExpTest(patrn, strng)
- Dim regEx, retVal ' 建立变量。
- Set regEx = New RegExp ' 建立正则表达式。
- regEx.Pattern = patrn ' 设置模式。
- regEx.IgnoreCase = False ' 设置是否区分大小写。
- retVal = regEx.Test(strng) ' 执行搜索测试。
- If retVal Then
- RegExpTest = "合法用户名。"
- Else
- RegExpTest = "非法用户名。"
- End If
- End Function
- name=request.form("name")
- psw=request.form("psw")
- sex=request.form("sex")
- city=request.form("city")
- Response.write RegExpTest("^[-_a-zA-Z0-9u4e00-u9fa5]{2,20}$", name)
- %>
运行界面见附图。
另外,还有一些正则表达式可供参考:
匹配中文字符的正则表达式:
[u4e00-u9fa5]
匹配双字节字符(包括汉字在内)正则表达式:
[^x00-xff]
匹配空行的正则表达式:
n[s| ]*r
匹配HTML标记的正则表达式:
/ <(.*)> .* </1> | <(.*) /> /
匹配首尾空格的正则表达式:
(^s*)|(s*$)
用正则表达式限制只能输入中文:
onkeyup= "value=value.replace(/[^u4E00-u9FA5]/g, ' ') " onbeforepaste= "clipboardData.setData( 'text ',clipboardData.getData( 'text ').replace(/[^u4E00-u9FA5]/g, ' ')) "
用正则表达式限制只能输入全角字符:
onkeyup= "value=value.replace(/[^uFF00-uFFFF]/g, ' ') " onbeforepaste= "clipboardData.setData( 'text ',clipboardData.getData( 'text ').replace(/[^uFF00-uFFFF]/g, ' ')) "
用正则表达式限制只能输入数字:
onkeyup= "value=value.replace(/[^d]/g, ' ') "onbeforepaste= "clipboardData.setData( 'text ',clipboardData.getData( 'text ').replace(/[^d]/g, ' ')) "
用正则表达式限制只能输入数字和英文:
onkeyup= "value=value.replace(/[W]/g, ' ') "onbeforepaste= "clipboardData.setData( 'text ',clipboardData.getData( 'text ').replace(/[^d]/g, ' ')) "
[本日志由 admin 于 2009-11-02 10:06 PM 编辑]
上一篇: Mysql常用命令行大全(转)下一篇: php数据类型判断
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: asp
相关日志:
评论: 0 | 引用: 0 | 查看次数: 4987
发表评论
广告位