C#中如何限制文本框只能输入大写英文字母或者中文,如输入的是小写的就提示错误,这个代码怎么实现?

2024-12-18 22:52:40
推荐回答(4个)
回答1:

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

namespace ConsoleApplication8
{
class Program
{
static void Main(string[] args)
{
while (true)
{
string path = "^[\u4E00-\u9FA5A-Z]+$";
string str = Console.ReadLine();
Regex rg = new Regex(path);
if (!rg.IsMatch(str))
{
Console.WriteLine("只能输入大写字母或中文");
}
}
}
}
}
这个是控制台写的;你变换下就能用了
正则表达 来实现;
string path = "^[\u4E00-\u9FA5A-Z]+$"; //验证输入的为大写英文字母或者中文

回答2:

用正则表达式实现:
1、 ^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串
2、[/u4e00-/u9fa5] //匹配中文字符的正则表达式

用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/u4E00-/u9FA5]/g,''))"

用正则表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[/W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/d]/g,''))"

回答3:

public bool A(string str)
{
string regex = "^[\u4e00-\u9fa5]+$";//这个是判断中文
regex = "^[A-Z]+$";//这个是判断大写字母
regex = "^[a-z]+$";//这个是判断小写
return Regex.IsMatch(str,regex );//返回判断结果 符合为true,否则为false
}

回答4:

在按钮点击的时候去用正则判断一下..