Regular Expressions trong C# Bắt lỗi người nhập email
Regex C# 2016
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text.RegularExpressions; //Library RegularExpressions
namespace demoRegex
{
class Program
{
static void Main(string[] args)
{
//Regular Expressions (regex or regexp) in C#
Console.Write("Enter the Email: ");
string email = Console.ReadLine();
Regex rx = new Regex("^[a-zA-Z0-9]{3,20}@[a-zA-Z0-9]{2,10}.[a-zA-Z]{2,3}$");
if (!rx.IsMatch(email))
Console.WriteLine("Email format is not Correct!");
else
Console.WriteLine("Email format is Conrrect!");
Console.Read();
}
}
}
Regular Expressions trong C# Lấy ra ngày tháng năm trong chuỗi
Regex C# 2016
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text.RegularExpressions; //Library RegularExpressions
namespace demoDelegate
{
class Program
{
static void Main(string[] args)
{
//Regular Expressions (regex or regexp) in C#
string myText = "Today is the 6.5.2016 It is World Environment Day";
//Pattern \\d{1}.\\d{1}.\\d{4}
Regex rx = new Regex("\\d{1}.\\d{1}.\\d{4}");
Match m = rx.Match(myText);
while(m.Success){
Console.WriteLine("Found: "+m.Value);
m = m.NextMatch(); //Move to the next match
}
Console.Read();
}
}
}
Regular Expressions trong C# Lấy ra tất cả các số trong chuỗi
Regex C# 2016
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text.RegularExpressions; //Library RegularExpressions
namespace demoRegex
{
class Program
{
static void Main(string[] args)
{
//Regular Expressions (regex or regexp) in C#
string myText = "Today is the 6.5.2016 It is World Environment Day 9:30 AM";
//Pattern [0-9]+ lấy ra tất cả các số trong chuỗi
Match m = Regex.Match(myText,"[0-9]+");
while(m.Groups[0].Value != ""){
Console.WriteLine("Found: "+m.Value);
m = m.NextMatch(); //Move to the next match Chuyển sang match tiếp theo
}
Console.Read();
}
}
}
Regular Expressions trong C# Tìm và Lấy ra vị trí của chuỗi
Regex C# 2016
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text.RegularExpressions; //Library RegularExpressions
namespace demoRegex
{
class Program
{
static void Main(string[] args)
{
//Regular Expressions (regex or regexp) in C#
string myText = "aoop aggt allp auuk aiio aeep";
//Pattern @"a\w+p" lấy từ có chữ a ở đầu và chữ p ở cuối
MatchCollection m = Regex.Matches(myText,@"a\w+p");
foreach(Match match in m){
foreach(Capture capture in match.Captures){
Console.WriteLine("Value: {0} and {1}",capture.Value,capture.Index);
}
}
Console.Read();
}
}
}
Regular Expressions trong C# [Region cất dấu nhóm code]
Regex C# 2016
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text.RegularExpressions;
namespace RegularExDemo
{
class Program
{
static void Main(string[] args)
{
Regex regex = new Regex(@"\d+ \D+ \d+"); // /d: lấy số từ 0-9; /D: lấy kí tự ko fai số
Match match = regex.Match("ABc 3453534543543543534545 Def 333333");
if (match.Success)
{
Console.WriteLine(match.Value);
}
#region: Match collection
////tập hợp chứa những so khớp
//MatchCollection mc;
////1 chuỗi thử nghiệm
//string chuoi = "I like money, like woman and like C#";
////tạo pattern
//string pattern = "like";
////khởi tạo 1 đối tượng của Regex
////truyền chuỗi pattern vào constructor
//Regex myRegex = new Regex(pattern);
////dùng phương thức Matches của myRegex
////để tìm ra matches và chỉ mục của từng match
//mc = myRegex.Matches(chuoi);
//foreach (Match m in mc)
//{
// Console.WriteLine("Chuoi con '{0}' xuat hien o chi muc {1}", m.Value, m.Index);
//}
#endregion
#region
////tập hợp chứa những so khớp
//MatchCollection mc;
////1 chuỗi thử nghiệm
//string chuoi = "This is a example string.";
////tạo pattern
////luật:cho tìm ra bất cứ những ký tự không phải ký tự khoảng trắng
////rồi theo sau nó là kí tự khoảng trắng
//string pattern = @"\S+\s";
////khởi tạo 1 đối tượng của Regex
////truyền chuỗi pattern vào constructor
//Regex myRegex = new Regex(pattern);
////dùng phương thức Matches của myRegex
////để tìm ra matches và chỉ mục của từng match
//mc = myRegex.Matches(chuoi);
//for (int i = 0; i < mc.Count; i++)
//{
// Console.WriteLine("The match[{0}]: '{1}' co chieu dai la {2}", i, mc[i].Value, mc[i].Length);
// #endregion
//}
#endregion
#region: kiểm tra tính hợp lệ của email
// string str = "khanh.bn@gmail.com";
//Console.WriteLine("Nhap vao email cua ban: ");
//string str = Console.ReadLine();
//string pattern1 = @"^[\w.*]+@[a-z].*$";
// ^[\w]+([.][\w]+)*[@][\w]+([.][A-z0-9]+)*[.][A-z]{2,4}$ : chuỗi
//Regex myRegex1 = new Regex(pattern1);
//MatchCollection mc = myRegex1.Matches(str);
//foreach (Match m in mc)
//{
// if (m.Success)
// {
// Console.WriteLine("email: {0} hop le ",m);
// }
// else
// {
// Console.WriteLine("KO hop le");
// }
//}
//Match m = myRegex1.Match(str);
//if (m.Success)
//{
// Console.WriteLine("email: {0} hop le ", m);
//}else
//{
// Console.WriteLine("email: {0} ko hop le ", m);
//}
// Console.Read();
#endregion
#region: kiểm tra định dạng ngày tháng
Console.WriteLine("Nhap vao ngay thang nam: ");
string str = Console.ReadLine();
//string pattern1 = @"^(?<day>(0?[1-9]|[12][\d]|3[01]))[\/\-](?<month>(0?[1-9]|1[012]))[\/\-](?<year>(\d{4}))$";
//string pattern1 = @"^((0?[13578]|10|12)(-|\/)(([1-9])|(0[1-9])|([12])([0-9]?)|(3[01]?))(-|\/)((19)([2-9])(\d{1})|(20)([01])(\d{1})|([8901])(\d{1}))|(0?[2469]|11)(-|\/)(([1-9])|(0[1-9])|([12])([0-9]?)|(3[0]?))(-|\/)((19)([2-9])(\d{1})|(20)([01])(\d{1})|([8901])(\d{1})))$";
//Regex myRegex1 = new Regex(pattern1);
//Match m = myRegex1.Match(str);
if (checkDate(str))
{
Console.WriteLine("ngay,thang,nam: {0} hop le ", str);
}
else
{
Console.WriteLine("ngay,thang,nam: {0} ko hop le ", str);
}
//Console.WriteLine(day + month + year);
Console.ReadLine();
#endregion
}
public static bool checkDate(string date)
{
string pattern1 = @"^(?<day>(0?[1-9]|[12][\d]|3[01]))[\/\-](?<month>(0?[1-9]|1[012]))[\/\-](?<year>(\d{4}))$";
//string pattern1 = @"^((0?[13578]|10|12)(-|\/)(([1-9])|(0[1-9])|([12])([0-9]?)|(3[01]?))(-|\/)((19)([2-9])(\d{1})|(20)([01])(\d{1})|([8901])(\d{1}))|(0?[2469]|11)(-|\/)(([1-9])|(0[1-9])|([12])([0-9]?)|(3[0]?))(-|\/)((19)([2-9])(\d{1})|(20)([01])(\d{1})|([8901])(\d{1})))$";
Regex myRegex1 = new Regex(pattern1);
Match m = myRegex1.Match(date);
string day = m.Groups["day"].Value;
string month = m.Groups["month"].Value;
string year = m.Groups["year"].Value;
Console.WriteLine(day + month + year);
if (int.Parse(day) == 31 && (int.Parse(month) == 1 || int.Parse(month) == 3 || int.Parse(month) == 5 || int.Parse(month) == 7 || int.Parse(month) == 8 || int.Parse(month) == 10 || int.Parse(month) == 12))
{
return true;
}
else if (int.Parse(day) == 30 && ( int.Parse(month) == 4 || int.Parse(month) == 6 || int.Parse(month) == 9 || int.Parse(month) == 8 || int.Parse(month) == 11))
{
return true;
}else if(int.Parse(day) == 28 && int.Parse(month) == 2)
{
return true;
}else if(int.Parse(day) == 29 && int.Parse(month) == 2 && (int.Parse(year) % 4 == 0) && ((int.Parse(year) % 100 != 0) || (int.Parse(year) %400 ==0)))
{
return true;
}
else
{
return false;
}
}
}
}
0 nhận xét:
Post a Comment