arman_Delta2002
دوشنبه 06 اردیبهشت 1395, 06:56 صبح
سلام من یک کد پیدا کردم که 2 آرایه از بایت میگیره و جستجو میکنه که آیا ارایه دومی در اولی وجود دارد یا نه
حال میخوام بجای جستجو از اول ارایه بیاد از اخر آرایه جستجو کنه میتونین کمکم کنین این کد رو تقییر بدم
میخوام با دستور FindLastIndex جستجو کنم که از آخر به اول ارایه بگرده مرسی
private bool CheckEndPointPaket(byte[] data, byte[] pattern)
{
try
{
int fidx = 0;
int result = Array.FindIndex(data, 0, data.Length, (byte b) =>
{
fidx = (b == pattern[fidx]) ? fidx + 1 : 0;
return (fidx == pattern.Length);
});
return (result >= pattern.Length - 1);
}
catch (Exception ex)
{
return false;
}
}
حال میخوام بجای جستجو از اول ارایه بیاد از اخر آرایه جستجو کنه میتونین کمکم کنین این کد رو تقییر بدم
میخوام با دستور FindLastIndex جستجو کنم که از آخر به اول ارایه بگرده مرسی
private bool CheckEndPointPaket(byte[] data, byte[] pattern)
{
try
{
int fidx = 0;
int result = Array.FindIndex(data, 0, data.Length, (byte b) =>
{
fidx = (b == pattern[fidx]) ? fidx + 1 : 0;
return (fidx == pattern.Length);
});
return (result >= pattern.Length - 1);
}
catch (Exception ex)
{
return false;
}
}