检测中文

简介: 项目中有一个地方需要检测用户的输入,而且客户要求不能输入中文。限制只能输入中文的方法比较多,主要是以下的方法: 1、检测每个字符的Ascii ,判断是否在 255 以内; 2、用正则表达式。

项目中有一个地方需要检测用户的输入,而且客户要求不能输入中文。限制只能输入中文的方法比较多,主要是以下的方法:

1、检测每个字符的Ascii ,判断是否在 255 以内;

2、用正则表达式。eg: [^/x00-/xff]

以下就是用 2 来实现的:

 

using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Please enter the data.");

            string strTest = Console.ReadLine();

            while(strTest != null)
            {
                if (strTest.Trim().ToLower().Equals("stop") )
                {
                    break;
                }

                IsChinese(strTest);

                Console.WriteLine("/nPlease enter the data.");
                strTest = Console.ReadLine();
            }
           
        }

        /// <summary>
        /// 检查是否为汉字
        /// </summary>
        /// <param name="str">需要检查的字符串 </param>
        /// <returns>true:字符串中有汉字 </returns>
        /// 实现流程:
        ///     1、构造正则匹配表达式
        ///     2、判断是否有中文
        private static bool IsChinese(string str)
        {
            string strChinesePatterns = "[^/x00-/xff]";
            System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(strChinesePatterns);
            System.Text.RegularExpressions.MatchCollection mch = reg.Matches(str, 0);
            if (mch.Count > 0)
            {
                foreach(Match mach in mch)
                    Console.WriteLine(string.Format("{0} = {1} ", mach.Index.ToString(), mach.Value));

                Console.WriteLine(string.Format("[ {0} ] contains {1} chinese.", str, mch.Count.ToString()));

                return true;
            }
            else
            {
                Console.WriteLine("No chinese.");
                return false;
            }
        }
    }
}

目录
相关文章
|
文字识别 算法 数据挖掘
文本检测 DBNet
文本检测 DBNet
349 0
|
4月前
|
文字识别 算法 固态存储
OCR -- 文本检测
OCR -- 文本检测
46 0
|
机器学习/深度学习 自然语言处理 算法
解读未知:文本识别算法的突破与实际应用
解读未知:文本识别算法的突破与实际应用
解读未知:文本识别算法的突破与实际应用
|
7月前
|
数据采集 机器学习/深度学习 自然语言处理
【相关问题解答2】bert中文文本摘要代码:结果输出为一些重复的标点符号和数字
【相关问题解答2】bert中文文本摘要代码:结果输出为一些重复的标点符号和数字
58 0
|
机器学习/深度学习 编解码 自然语言处理
文本检测之SegLink
翻译:《Detecting Oriented Text in Natural Images by Linking Segments》
139 1
|
机器学习/深度学习 存储 人工智能
文本的检测、识别实战:使用 Tesseract 进行 OpenCV OCR 和文本识别
文本的检测、识别实战:使用 Tesseract 进行 OpenCV OCR 和文本识别
801 0
文本的检测、识别实战:使用 Tesseract 进行 OpenCV OCR 和文本识别
|
Python
测试 OFA英文图像描述
测试 OFA英文图像描述
110 0
测试 OFA英文图像描述
|
机器学习/深度学习
FOTS:自然场景的文本检测与识别(上)
FOTS:自然场景的文本检测与识别
180 0
FOTS:自然场景的文本检测与识别(上)
|
机器学习/深度学习 TensorFlow 算法框架/工具
FOTS:自然场景的文本检测与识别(下)
FOTS:自然场景的文本检测与识别
194 0
FOTS:自然场景的文本检测与识别(下)