Тема: Юнікод
Можете, будь ласка, вказати мені діапазон символів юникоду (англійська абетка з великими та маленькими буквами без інших символів)
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → C#, .NET → Юнікод
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися
Можете, будь ласка, вказати мені діапазон символів юникоду (англійська абетка з великими та маленькими буквами без інших символів)
Іще одна людина сьогодні дізнається про існування Вікіпедії: https://en.m.wikipedia.org/wiki/List_of … characters
Тобто знайти коди літер a, z, A і Z - це вже заскладна операція? Причому їхні коди в Unicode та ASCII збігаються.
Ну і так, це не один діапазон, а два.
Але бажано не використовувати ці номери, а користуватися стандартними процедурами чи списками.
Я не тупий. Це я знаю. Я думав, що є одним діапазоном, бо мені потрбіно саме так. Добре, буду шукати інші способи доробити код
ascii = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
c = ascii[random(ascii.length())];
чи як там випадкові числа в C# генеруються.
Ну, або так хочеться процедурно, то
r = random(52);
c = r<26 ? 'A'+r : 'a'-26+r;
Здається, так перетворювати можна.
Але я рекомендую перший варіант - 50 зайвих байт в обмін на пару розгалужень і сум.
using System;
using System.Text;
namespace RandomAz {
static class Program {
static char GetRandomCharAz(Random rand) {
// (('Z' - 'A' + 1) << 1) == 52
int v = rand.Next(52);
return (char)(((v >> 1) + 'A') | ((v & 1) << 5));
}
static string GetRandomStringAz(int length, Random rand) {
StringBuilder sb = new StringBuilder();
while(--length >= 0)
sb.Append(GetRandomCharAz(rand));
return sb.ToString();
}
static void Main(string[] args) {
Random rand = new Random();
Console.WriteLine(GetRandomStringAz(64, rand));
}
}
}
Цей код виводить в консоль стрічку з 64 символів, де кожен символ є псевдо-випадково згенерованим із [A-Za-z].
Тепер дивлюсь на це і бачу, що щось пішло не по плану.
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися