asp.net 验证正则表达式

时间:2022-12-20 11:19:01

基本元字符
. 任意的一个非换行字符
[] 集合匹配,匹配一个[]中出现的字符. 是在多个字符中取一个.
() 调整优先级的作用. 还有一个分组的作用
| 或的意思,测试|一下. 注意,或的优先级最低

限定元字符
+ 紧跟这个符号前面的元素出现1次到多次 {1,}
* 紧跟这个符号前面的元素出现0次到多次 {0,}
? 紧跟这个符号前面的元素有或没有 {0,1}
{n} 紧跟这个符号前面的元素出现n次
{n,} 紧跟这个符号前面的元素出现n次,最多无限次
{n,m} 紧跟这个符号前面的元素出现n次,最多m次

首尾元字符
\d+ "abc123def" "123"
^ 必须以某某字符开头的含义,在[]表示否定 [^abc]  例如:^\d+(必须以数字开头)
$ 必须以某某结尾   例如:\d+$(必须以数字结尾),^\d+$(必须以数字开头和结尾)
$ 分组后对组的引用

简写元字符(小写肯定,大写否定)
\d 数字 \D 非数字  digit 
\w 文本 \W 非文本  word
\s 空格 \S 非空格  space

JavaScript、C#
-> C#中
命名空间:System.Text.RegylarExpressions;
Regex
Match
MatchCollection
-> 四个模型
bool Ragex.IsMatch(处理文本, 正则表达式);  文本是否有正则表达式内容
Match Regex.Match(处理文本, 正则表达式);  在文本当中将匹配的内容提取出来(只匹配从左到右第一个)
MatchCollection Regex.Matches(处理文本, 正则表达式);  提取所有匹配文本
string Regex.Replace(处理字符串, 正则表达式, 替换字符串);
1------2-----3---4---5--6---7-----8-----9
Regex.Replace(s, @"\-+", "-")

提取的知识点
-> 提取的两种语法
-> 贪婪模式
-> 分组(如何分、如何用),

[\s\S]表示任意字符
WebClient wc = new WebClient();
string html1 = wc.DownloadString("http://192.168.1.250/");
src="[^"]+" string html = File.ReadAllText("1.txt", Encoding.Default);
string regex = @"【\s*\d+\s*】[\s\S]+?</div>";
Match m = Regex.Match(html, regex);
Match mm;
string s;
if (m.Success)
{
mm = Regex.Match(m.Value, @">[\s\S]+<");
s = mm.Value.Trim('>', '<', '\t', '\r', '\n');
s = Regex.Replace(s, @"\s+", "");
}
List<string> list = new List<string>();
MatchCollection mc = Regex.Matches(html, regex);
for (int i = ; i < mc.Count; i++)
{
Match m = mc[i];
Match mm;
string s;
if (m.Success)
{
mm = Regex.Match(m.Value, @">[\s\S]+<");
s = mm.Value.Trim('>', '<', '\t', '\r', '\n');
s = Regex.Replace(s, @"\s+", ""); list.Add(s);
}
}
string ip = "http://192.168.1.250/";
WebClient wc = new WebClient();
string html1 = wc.DownloadString("http://192.168.1.250/");
// src="[^"]+"
// 分组编号从左往右分别从1开始
MatchCollection mc = Regex.Matches(html1, @"src=""([^""]+jpg)""");
for (int i = ; i < mc.Count; i++)
{
Match m = mc[i];
string t = m.Groups[].Value;
// http://www.123.com/123.jpg
string address = ip.TrimEnd('/') + "/" + t;
wc.DownloadFile(address, i + ".jpg");
}

asp.net 验证正则表达式

整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$
只能输入数字:"^[0-9]*$"。
只能输入n位的数字:"^\d{n}$"。
只能输入至少n位的数字:"^\d{n,}$"。
只能输入m~n位的数字:。"^\d{m,n}$"
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。
只能输入非零的正整数:"^\+?[1-9][0-9]*$"。
只能输入非零的负整数:"^\-[1-9][]0-9"*$。
只能输入长度为3的字符:"^.{3}$"。
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。
只能输入由数字、26个英文字母或者下划线组成的字符串:"^\w+$"。
验证用户密码:"^[a-zA-Z]\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
验证是否含有^%&'',;=?$\"等字符:"[^%&'',;=?$\x22]+"。
只能输入汉字:"^[\u4e00-\u9fa5]{0,}$"
验证Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。
验证InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。
验证电话号码:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX- XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。
验证身份证号(15位或18位数字):"^\d{15}|\d{18}$"。
验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。
验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$
只能输入数字:"^[0-9]*$"。
只能输入n位的数字:"^\d{n}$"。
只能输入至少n位的数字:"^\d{n,}$"。
只能输入m~n位的数字:。"^\d{m,n}$"
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。
只能输入非零的正整数:"^\+?[1-9][0-9]*$"。
只能输入非零的负整数:"^\-[1-9][]0-9"*$。
只能输入长度为3的字符:"^.{3}$"。
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。
只能输入由数字、26个英文字母或者下划线组成的字符串:"^\w+$"。
验证用户密码:"^[a-zA-Z]\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
验证是否含有^%&'',;=?$\"等字符:"[^%&'',;=?$\x22]+"。
只能输入汉字:"^[\u4e00-\u9fa5]{0,}$"
验证Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。
验证InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。
验证电话号码:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX- XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。
验证身份证号(15位或18位数字):"^\d{15}|\d{18}$"。
验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。
验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。

asp.net 验证正则表达式的更多相关文章

  1. asp&period;net 验证正则表达式 精心整理

    asp.net 验证正则表达式 整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$只能输入数字:"^[0-9]*$".只能输入n位的数字:"^\d{n}$& ...

  2. JavaScript常用表单验证正则表达式(身份证、电话号码、邮编、日期、IP等)

    身份证正则表达式 //身份证正则表达式(15位)isIDCard1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;//身份证正则表达式 ...

  3. ASP&period;Net 验证控件 RequiredFieldValidator

    使用 ASP.NET 验证控件可在网页上检查用户输入.有用于各种不同类型验证的控件,例如范围检查或模式匹配验证控件.每个验证控件都引用网页上其他位置的输入控件(服务器控件).当处理用户输入时(例如,当 ...

  4. ASP&period;NET验证控件详解

    现在ASP.NET,你不但可以轻松的实现对用户输入的验证,而且,还可以选择验证在服务器端进行还是在客户端进行,再也不必考虑那么多了,程序员们可以将重要精力放在主程序的设计上了. ASP.NET公有六种 ...

  5. 为人们服务的asp&period;net 验证控件

    ASP.NET是微软推出的WEB开发工具,他有很强大的功能,今天看视频讲到验证控件这一部分,真的感受到了微软全心全意为人民服务了.越来越佩服微软了,人家都设计出来了,咱们一定要会用才可以啊,不然太…. ...

  6. JavaScript验证正则表达式大全

    JavaScript验证正则表达式大全,搜集最全的JavaScript验证正则表达式,开始查看吧,这里的都是正则表达式的例子,具体和函数结合的使用方法,还请查看下篇文章<JavaScript使用 ...

  7. java密码验证正则表达式校验

    ,正则表达式就是记录文本规则的代码.php密码验证正则表达式(8位长度限制)<?php //密码验证 $password = "zongzi_Abc_oo13a2"; $n ...

  8. PHP常用验证正则表达式

    PHP常用验证正则表达式 数字.手机号.QQ号.Url地址合法性校验 1.验证是否为整数 1 function isNumber($val) 2 { 3 if(ereg("^[0-9]+$& ...

  9. JQuery数字类型验证正则表达式

    有朋友整了一些关于js与jquery的数字类型验证正则表达式代码,下面我给大家再整理一下. 这里包括了数字验证实现与测试实例了,大家可参考. js验证数字正则表达式 代码如下: //检测是否为数字和小 ...

随机推荐

  1. int main&lpar;int argc&comma; char &ast; argv&lbrack;&rsqb;&rpar; 里的异常处理

    #import <UIKit/UIKit.h> #import "AppDelegate.h" int main(int argc, char * argv[]) { ...

  2. 统计类别数量并且使用pyplot画出柱状图

    从数据库中读取数据,具体操作为: # -*- coding: utf-8 -*- from numpy import * import numpy as np import pandas as pd ...

  3. iOS开发——app审核指导方针(官网)

    iOS 开发后上传到App Store审核的指导方针 ——苹果官网介绍地址 https://developer.apple.com/app-store/review/guidelines/

  4. ArryList vs LinkedList

    references: http://www.javaperformancetuning.com/articles/randomaccess.shtml http://*.co ...

  5. libevent安装总结 - jinfg2008的专栏 - 博客频道 - CSDN&period;NET

    libevent安装总结 - jinfg2008的专栏 - 博客频道 - CSDN.NET libevent安装总结 分类: linux 系统配置 2013-02-13 22:37 99人阅读 评论( ...

  6. Unity应用架构设计&lpar;11&rpar;——一个网络层的构建

    对于客户端应用程序,免不了和远程服务打交道.设计一个良好的『服务层』能帮我们规范和分离业务代码,提高生产效率.服务层最核心的模块一定是怎样发送请求,虽然Mono提供了很多C#网络请求类,诸如WebCl ...

  7. Redis 集群环境添加节点失败问题

    最近在给公司网管系统Redis集群环境添加节点时候遇到一个问题,提示新增的Node不为空: [root@node00 src]# ./redis-trib.rb add-node --slave -- ...

  8. 一款基于Vue的扩展性组件库 VV-UI

    github: https://github.com/VV-UI/VV-UI 演示地址: https://vv-ui.github.io/VV-UI/#/meta-info 1. LoadingBar ...

  9. &lbrack;Swift-2019力扣杯春季初赛&rsqb;2&period; 校园自行车分配

    在由 2D 网格表示的校园里有 n 位工人(worker)和 m 辆自行车(bike),n <= m.所有工人和自行车的位置都用网格上的 2D 坐标表示. 我们需要为每位工人分配一辆自行车.在所 ...

  10. hdu5229

    bc41第二题: 题意:两个人有 n 个串,随机选出两个串,可以进行这样的操作:①选一个串消去最后一个字符,②若两串相同则可以全部消去两串 若到某个人时正好消去两个串,则这个人胜另一人负,问先手胜概率 ...