如何在Unity中使用正则表达式?
很多时候我们在检测用户输入,或者判断一些问题,或密码的时候,会需要验证字符串是否符合我们要求的规范,那么在Unity中如何使用这些规范呢?
//C#
private string 表达式 = “1*$”(表达式:当前意思是仅可以输入数字);
private string 用户输入1= “123123123”;
private string 用户输入2= “1231a”;
//判断
Regex reg = new Regex(表达式);
bool isContain = reg.IsMatch(用户输入1); // 结果:True
bool isContain = reg.IsMatch(用户输入2); // 结果:False
只能输入数字: “2*$” 。
只能输入n位的数字:“^\d{n}$”。
只能输入至少n位的数字:“^\d{n,}$”。
只能输入m~n位的数字:“^\d{m,n}$”。
只能输入零和非零开头的数字:“^(0|[1-9][0-9]*)$”。
只能输入有两位小数的正实数:“3+(.[0-9]{2})?$”。
只能输入有1~3位小数的正实数:“4+(.[0-9]{1,3})?$”。
只能输入非零的正整数:“^+?[1-9][0-9]*$”。
只能输入非零的负整数:“^-[1-9][]0-9”*$。
只能输入长度为3的字符:“^.{3}$”。
只能输入由26个英文字母组成的字符串:“5+$”。
只能输入由26个大写英文字母组成的字符串:“6+$”。
只能输入由26个小写英文字母组成的字符串:“7+$”。
只能输入由数字和26个英文字母组成的字符串:“8+$”。
只能输入由数字、26个英文字母或者下划线组成的字符串:“^\w+$”。
验证用户密码:"9\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
验证用户密码强度(包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间。):“^(?=.\d)(?=.[a-z])(?=.*[A-Z]).{8,10}$”。
验证是否含有^%&’,;=?KaTeX parse error: Expected group after '^' at position 9: \"等字符:"[^̲%&’,;=?\x22]+"。
只能输入汉字:“10{0,}$”
验证Email地址:“^\w+([-+.]\w+)@\w+([-.]\w+).\w+([-.]\w+)*$”。
验证InternetURL:“^http://([\w-]+.)+[\w-]+(/[\w-./?%&=]*)?$”。
提取图片地址:/(http(s)?😕/)?(www.)?(\w+:\d+)?(/\w+)+.(png|gif|jpg|bmp|jpeg)/gi。
验证电话号码:"^((\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”。
验证Ipv4地址 :“\b(?😦?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b”。
验证IP地址:“\d+.\d+.\d+.\d+”。
验证中国邮政编码:“[1-9]\d{5}(?!\d)”。
验证是否可能是QQ号: “[1-9][0-9]{4,}”。