关闭

【C#】利用正则表达式判断输入是否为纯数字、容器类

标签: C#容器类正则表达式List
1834人阅读 评论(0) 收藏 举报
分类:

容器类、正则表达式在几乎所有编程语言都存在的东西。很常用也很使用。下面用如下的一个控制台小程序说明C#的正则表达式与容器类的应用。

开始直接输出在C#定义好的数据字典Dictionary,这就是Java与Python的HashMap

之后定义一个存int的List,让用户无限输入这个List的元素,输入到#则停止输入,在输入的过程中遇到不是纯输入,则拒绝这个输入。

遍历这个List输出,之后利用C#的另一个容器HashSet为这个List去重。


这个程序的代码如下,其实以上所有的东西都在以前的文章说过。这主要是将这种思想写成C#语言而已。

关于正则表达式可以参考:《【JavaScript】利用正则表达式检查输入框输入的是否为网址》(点击打开链接

关于利用HashSet为List去重:《【Java】为ArrayList去重》(点击打开链接

using System;
using System.Collections.Generic;//用到了容器类
using System.Text.RegularExpressions;//用到了正则表达式

class Collections
{
    //C#容器Dictionary的基本使用
    public static void dictionaryTest() {
        Dictionary<string, int> dict = new Dictionary<string, int>();
        dict.Add("K1", 123);
        dict["K2"] = 456;
        dict.Add("K3", 789);
        Console.WriteLine("数据字典dict中的Key-value对为:");
        foreach (KeyValuePair<string, int> k in dict)
        {
            Console.WriteLine("{0}-{1}; ", k.Key, k.Value); //K1-123; K2-456; K3-789;
        }    
    }

    //C#容器List与HashSet的基本使用
    public static void listTest() {

        List<int> list = new List<int>();

        Console.WriteLine("输入#,结束输入!");
        Regex regex = new Regex("^[0-9]*$");
        String input_string = "";
        while (true)
        {
            Console.Write("请输入数组的数字:");
            input_string = Console.ReadLine();
            if (input_string.Trim().CompareTo("#") == 0)
            {
                break;
            }
            else
            {
                if (regex.IsMatch(input_string))//利用正则表达式判断是否输入的是数字
                {
                    list.Add(int.Parse(input_string));
                }
                else
                {
                    Console.WriteLine("输入的不是数字!请重新输入!");
                }
            }
        }
        Console.WriteLine("输入的List为:");
        for (int i = 0; i < list.Count; i++)
        {
            Console.Write(list[i] + " ");
        }
        Console.WriteLine();

        list = new List<int>(new HashSet<int>(list));//利用集合为list去重

        Console.WriteLine("List利用Set去重后为:");        
        for (int i = 0; i < list.Count; i++)
        {
            Console.Write(list[i] + " ");
        }
        Console.WriteLine(); ;
    
    }

    public static void Main(String[] args)
    {
        dictionaryTest();
        listTest();
        Console.ReadKey();//等待用户按回车才结束程序
    }
}


0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

js 正则表达式 判断是否是纯数字

妈蛋  不想学js了  最讨厌写总结了 今天哥哥qiang
  • baobao768821032
  • baobao768821032
  • 2014-07-24 00:53
  • 4183

iOS 正则表达式判断纯数字以及匹配11位手机号码

1用正则表达式 //是否是纯数字 + (BOOL)isNumText:(NSString *)str{ NSString * regex = @"(/^[0-9]*$/)"; ...
  • yusirxiaer
  • yusirxiaer
  • 2016-11-15 15:05
  • 5355

@V@ java代码笔记2010-06-12:java控制台输入各类型类实现;以及判断输入字符串里面是否有数字的两种方法:方法1:转换成字符数组;方法2:正则表达式。

转自  : http://jayxigua.iteye.com/blog/691025    package jay_x_20100612; import java.io.*; impor...
  • Titilover
  • Titilover
  • 2011-09-27 16:39
  • 1512

判断Python输入是否为数字、字符(包括正则表达式)

当键入字符串时候,我们自己就可以判断了!一:我们在程序把输入的数字当字符串处理import re print("我现在要写一个文件数字猜游戏数字游戏:") temp=input("请你输入一个数字,猜...
  • bug_moving
  • bug_moving
  • 2016-10-21 19:27
  • 11019

C#Winform下用正则表达式限制TextBox只能输入数字

C#Winform下用正则表达式限制TextBox只能输入数字
  • educast
  • educast
  • 2011-05-06 08:37
  • 1886

iphone 正则表达式,判断是否位3位数字

//正则表达式,判断是否位3位数字,如果是,返回YES,否则返回NO - (BOOL) isEmailAddress { NSString * eMail = [NSString string...
  • think12
  • think12
  • 2011-12-29 11:40
  • 4282

正则表达式之判断用户注册信息是否为汉字、字母和数字

一般在写用户注册模块的时候都在对注册的用户名进行判断,查看一下有没有.!@#$%^&*()等这样的特殊字符,注册信息里一般将这些字符视为非法字符不允许注册。怎么进行判断呢,这里就用到了正则表达式了。 ...
  • liuzhidong123
  • liuzhidong123
  • 2011-08-24 11:08
  • 24483

oracle 判断字段是否为是数字 regexp_like用法 正则表达式

ORACLE中的支持正则表达式的函数主要有下面四个: 1,REGEXP_LIKE :与LIKE的功能相似 2,REGEXP_INSTR :与INSTR的功能相似 3,REGEXP_SUBSTR ...
  • VRML_0504
  • VRML_0504
  • 2013-09-17 10:09
  • 586

正则表达式验证输入框是否为数字

正则表达式1 首先这是个正则式验证,用来验证输入值的规则; 当输入值的键盘抬起时触发这个事件。this.value表示此输入框的值,/\D/g为正则表达式,用来匹配所有非数字字符; 此句功能...
  • qizhichao110
  • qizhichao110
  • 2013-09-26 18:11
  • 5383

JS的正则表达式判断输入框内为中文或者是英文数字

只能输入数字和英文的: 2.只能输入数字的: 3.只能输入全角的: 4.只能输入汉字的: 5.也可以这样: 输入数字和.,否则弹出输入有误 ...
  • lianqiangjava
  • lianqiangjava
  • 2012-06-20 16:05
  • 6970
    个人资料
    • 访问:1869964次
    • 积分:25171
    • 等级:
    • 排名:第285名
    • 原创:750篇
    • 转载:0篇
    • 译文:0篇
    • 评论:370条
    文章分类
    【备注】博文GIF动画的录制方法
    先用屏幕录制软件Freez Screen Video Capture录制屏幕,再把得到的AVI,利用GIF Movie Gear转化成GIF
    【友情链接】亲笔小说