|
|
|
|
#1 |
|
Участник
|
служебные символы
Существует ли возможность в константу(макрос) прописать строку со всеми служебными символами от 1 до 31
|
|
|
|
|
#2 |
|
Программатор
|
интересно зачем? А что это за символы от 1 до 31?
Последний раз редактировалось Sada; 17.10.2012 в 15:34. |
|
|
|
|
#3 |
|
Участник
|
от 1 до 31 - коды символов. смотрите тему
|
|
|
|
|
#4 |
|
Участник
|
X++: #localmacro.ListSpecSymbol
num2char(1)+
num2char(2)+
num2char(3)
#endmacro
print strLen(#ListSpecSymbol);
pause;
return;
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
|
|
|
#5 |
|
Участник
|
|
|
|
|
|
#6 |
|
Участник
|
Может использовать стандартную функцию StrRem и макрос как параметр?
__________________
Не принимайте жизнь всерьез - это временное явление...
|
|
|
|
|
#7 |
|
Участник
|
Цитата:
Сообщение от Jorj
Может использовать стандартную функцию StrRem и макрос как параметр?
я и спрашиваю, есть ли возможность поместить в макрос строку со всеми этими символами? |
|
|
|
|
#8 |
|
Участник
|
Нужен метод который будет удалять из некой строки служебные символы. Хочу поместить строку со служебными символами в макрос, чтобы каждый раз циклом не формировать
|
|
|
|
|
#9 |
|
Участник
|
Служебные символы потому и называются "служебными", что, как правило, не имеют графического отображения. Нет символа, который можно было бы указать. Только код.
Можно сделать наоборот. Составить список допустимых символов. И использовать strKeep() чтобы удалить лишнее X++: str strAvailable = '0123456789'; str strValue = 'xx000ddd555sdf8tt9'; ; print strValue; print strKeep(strValue, strAvailable); pause; return;
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
|
|
|
#10 |
|
Участник
|
|
|
|
|
|
#11 |
|
Участник
|
|
|
|
|
|
#12 |
|
Участник
|
Похоже, Вы оцениваете "правильность" (оптимальность) кода по количеству символов
![]() Но здесь возникают следующие вопросы: - какая разница сколько символов будет в макросе, если Вы его напишите только один раз? - как Вы будете решать проблему, если понадобяться символы вне цикла? Например, "неразрывный пробел" ASCII = 160 - всего ASCII-кодов 255. Даже если перечислить все печатные символы общий объем будет если не меньше, то, сопоставим с написанием цикла. Так какие претензии к списку допустимых символов?
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
|
|
|
#13 |
|
Программатор
|
скорее всего из вводимых данных пользователем нужно вырезать перевод каретки
А все служебные символы - это на всякий случай
|
|
|