[C#基礎]-字串比對,模擬網路遮罩判斷
本篇要分享字串比對,模擬網路遮罩判斷,有興趣的同好,歡迎來一下哈哈 ^ ^。
程式碼 |
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace CS_char_Compare { class Program { //字串比對,模擬網路遮罩判斷 publicbool charCompare(string s, string d) { byte[] byte_s = System.Text.Encoding.Default.GetBytes(s);//string -> byte byte[] byte_d = System.Text.Encoding.Default.GetBytes(d);//string -> byte int i = 0; int x=0; int y=0; for (i = 0; i < d.Length; i++) { x = byte_s[i];//byte -> int y = byte_d[i];//byte -> int if (byte_d[i]!='x')//未定義不用判斷 { if (x != y) { returnfalse;//只要一個不同,就回傳FALSE } } } returntrue;//全部相同 } staticvoid Main(string[] args) { Program p=new Program(); string s="0011001100110011";//資料 string d="xxxxxxxx00110011";//判斷,x代表未定義 bool blncheck; blncheck = p.charCompare(s, d); Console.WriteLine(s); Console.WriteLine(d); if (blncheck) { Console.WriteLine("true"); } else { Console.WriteLine("false"); } string s1= "0011001100110011";//資料 string d1= "xxxxxx1100111011";//判斷,x代表未定義 blncheck = p.charCompare(s1, d1); Console.WriteLine(s1); Console.WriteLine(d1); if (blncheck) { Console.WriteLine("true"); } else { Console.WriteLine("false"); } string s2 = "0011001100110011";//資料 string d2 = "xxxxxx1100110011";//判斷,x代表未定義 blncheck = p.charCompare(s2, d2); Console.WriteLine(s2); Console.WriteLine(d2); if (blncheck) { Console.WriteLine("true"); } else { Console.WriteLine("false"); } Console.Read(); } } }
|
沒有留言:
張貼留言