Имя: Пароль:
1C
1С v8
Добавление спец символов в строку
0 serg-lom89
 
24.03.16
08:54
Доброе уважаемые!)

Может кто делал подобный алгоритм.
Есть строка R17328(длина строки может быть 25)

Нужно что бы была возможность вставлять в данную строку "спецсимволы".
СпецСимволы  @?^* и т.д.
@R1$7328
@R1$73&&&28
R1$73&&&2@@@@@8
1 mehfk
 
24.03.16
08:57
А сейчас этой возможности нет?
2 serg-lom89
 
24.03.16
08:59
(1) так вот что то в голову не лезет ничего такого)))просто интересно может кто сталкивался сэтим?
нужно скорее всего какие то шаблоны задавать
3 mehfk
 
24.03.16
09:00
С каикм?
4 mehfk
 
24.03.16
09:00
*каким
5 serg-lom89
 
24.03.16
09:01
(4) ну какой то формат шаблона делать..например на регистрСвед
6 Одинесю
 
24.03.16
09:02
(5) Че за шаблон?
7 serg-lom89
 
24.03.16
09:05
(6) например задать шаблон
исходная R17328
Шаблон
@###@##
где # -числа которые не надо заменять
@-спецсимвол
8 serg-lom89
 
24.03.16
09:05
ну и итог
@R173"28
9 Fedor-1971
 
24.03.16
09:10
вот тебе выдержка из СП:
Расширение поля формы для поля ввода (Form field extension for a text box)
Маска (Mask)
Использование:

Чтение и запись.
Описание:

Тип: Строка.
Содержит посимвольную строку маски интерактивного ввода текста в поле.
В строке маски допустимо использование следующих специальных символов:
! - любой введенный символ преобразуется в верхний регистр;
9 - допустимо ввести произвольный символ цифры;
# - допустимо ввести произвольный символ цифры или - (знак минус) или + (знак плюс) или пробел;
N - допустимо ввести любые алфавитно-цифровые символы (буквы или цифры);
U - допустимо ввести любые алфавитно-цифровые символы (буквы или цифры) и любой введенный символ преобразуется в верхний регистр;
X (латинского алфавита) - допустимо ввести произвольный символ;
^ - не допустимо вводить этот символ интерактивно пользователем, он может устанавливаться только из языка;
h - допустим ввод символов обозначения шестнадцатеричных цифр;
@ – допустимо ввести любые алфавитно-цифровые символы (буквы или цифры) в верхнем регистре или пробел.
При помещении значения из поля ввода с маской в текстовый реквизит, связанный с этим полем ввода, происходит следующее преобразование: на тех позициях, где в маске стоит символ "@", а в строке пробел – пробел удаляется. Если в маске из специальных символов используются только символы "@", то все символы текста, соответствующие символам маски, не являющимся специальными символами, удаляются после последнего непустого блока из символов "@". Например, при маске "@@.@@.@@." текст "41. 2. ." преобразуется в "41.2".
Для того, чтобы использовать в маске один из специальных символов, нужно использовать перед ним символ "\".
Допускается указание нескольких масок в одном параметре. Маски разделяются символом ";". В этом случае использоваться будет та маска, к которой подходит введенный текст.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент.

\@###\@## - то что тебе нужно.
10 DDwe
 
24.03.16
09:10
(8) Ну наконец-то пятница.
11 serg-lom89
 
24.03.16
09:12
(9) хм...а есть какие варианты реализации?
12 DDwe
 
24.03.16
09:13
(11) Варианты чего? Если (9) не устраивает, регулярки тебе в руки.
13 Fedor-1971
 
24.03.16
09:15
(11) в смысле? т.е. заполнить свойство текстового поля формы  "Маска" религия не позволяет?
14 serg-lom89
 
24.03.16
09:16
а для нескольких вариантов..что бы пользователь мог сам устанавливать маски?
15 Fedor-1971
 
24.03.16
09:18
(14) сделай переключатель на форме и устанавливай маску для поля динамически, хочешь с клиента, хочешь с сервера.
16 Fedor-1971
 
24.03.16
09:18
15+ допустимые маски через ";", читай (9)
17 serg-lom89
 
24.03.16
09:30
(15) так получается что это при вводе отрабатывает только.
а мне нужно что бы преобразовало мое значение в нужное мне
18 Ёпрст
 
24.03.16
09:32
(17) регулярку используй, для форматирования на выходе
19 serg-lom89
 
24.03.16
09:41
(18) не совсем понял?
20 Fedor-1971
 
24.03.16
10:04
(17) делай свою функцию, хочешь через регулярные выражения, хочешь сам устанавливай правила
21 serg-lom89
 
24.03.16
10:06
(20) видимо так и придется)