Я только что наткнулся на эту тему, когда искал способ отформатировать значение в валюте США. Я применил несколько иной подход к предлагаемым решениям регулярных выражений:
amt = 1234567890.12
f_amt = format("$%.2f",amt)
i = f_amt.index(".")
while i > 4
f_amt[i-3]=","+f_amt[i-3]
i = f_amt.index(",")
end
f_amt
=> "$1,234,567,890.12"
Это может быть параметризовано для форматирования других валют.
public static int GetFirstOccurance(byte byteToFind, byte[] byteArray)
{
return Array.IndexOf(byteArray,byteToFind);
}
Он вернет -1, если не найден
Или, как указал Сэм, метод расширения:
public static int GetFirstOccurance(this byte[] byteArray, byte byteToFind)
{
return Array.IndexOf(byteArray,byteToFind);
}
Или сделать его общим:
public static int GetFirstOccurance<T>(this T[] array, T element)
{
return Array.IndexOf(array,element);
}
Тогда вы можете просто сказать:
int firstIndex = byteArray.GetFirstOccurance(byteValue);