Имя: Пароль:
1C
1С v8
Строка в число !!!
, ,
0 azeml
 
27.05.14
14:51
Здравствуйте
Вопрос как с этой строчки извлечь первую цифру??

6 , ВХ 0235 АА, Пінюк Юрий Йосипович


Число(Погруз)

Погруз это переменная поле выбора!!!
1 jsmith82
 
27.05.14
14:51
примитив
2 f_vadim
 
27.05.14
14:51
Лев(стр, 1)
3 Dzenn
 
гуру
27.05.14
14:52
АААААА!!! Паника ПАника ПАНИКА!!!
4 1dvd
 
27.05.14
14:52
Как Толстого звали?
5 ДенисЧ
 
27.05.14
14:52
(2) Фу, какой примитив....
6 f_vadim
 
27.05.14
14:53
(5) какой вопрос, такой ответ
регэкспы писать штоле?
7 ice777
 
27.05.14
14:53
(5) абсолютно точный ответ на вопрос. 1-ю цифру. и точка.
8 Maxus43
 
27.05.14
14:54
сдаётся мне что это характеристика, и брать по феншую надо из свойств характеристики, там оно число
9 AlexITGround
 
27.05.14
14:59
(8) не уж, так не интересно, извращение низкого левела
10 Timon1405
 
27.05.14
15:02
в тему призываются знатоки LINQ
11 kosts
 
27.05.14
15:06
(0)

Если Строка = "6 , ВХ 0235 АА, Пінюк Юрий Йосипович" Тогда
    Число = 6;
КонецЕсли;

12 f_vadim
 
27.05.14
15:07
(11) я взбугагнул даже :)
13 azeml
 
27.05.14
15:10
(2) спасибо помогло!
14 Explorer1c
 
27.05.14
15:10
(0) не верь никому
15 pwei
 
27.05.14
15:10
(12) главное не подвзбзднуть :)
16 1dvd
 
27.05.14
15:13
(15) семь согласных подряд... как при Сталине прям
17 GROOVY
 
27.05.14
15:13
(11) По сумма кодов символов надо было!
18 f_vadim
 
27.05.14
15:14
(13) тише. не позорь меня
19 Крошка Ру
 
27.05.14
15:18
(18)
"-Ты мне здорово помог!
- И не говори...
- Да нет я правда!..
- ... никому!"    (с) Кунг фу панда, кажется )))
20 AugustBlack
 
27.05.14
15:18
Функция УбратьЛишниеСимволы(Строка1) Экспорт
    НовСтрока = "";
    ПравильныеСимволы = "6";
    Для Сч = 1 по СтрДлина(Строка1) Цикл
        ТекСимв = Сред(Строка1, Сч, 1);
        Если Найти(ПравильныеСимволы, ТекСимв) > 0 Тогда
                Результат = Сред(Строка1,Сч);
            Прервать;
        КонецЕсли;
    КонецЦикла;
    Возврат Результат;    
КонецФункции
21 Slaventiya
 
27.05.14
15:33
(19) Именно Кунг фу панда )
22 DexterMorgan
 
27.05.14
15:45
&НаСервере
Функция ВернутьЦифрыИзСтроки(СтрокаПроверки)

        ЧислоНайдено = Ложь;
    ЦифрыИзСтроки = "";
    
    Для Сч = 1 По СтрДлина(СтрокаПроверки) Цикл
      Символ = Сред(СтрокаПроверки, Сч, 1);
      Если ЭтоЦифра(Символ) Тогда
        ЦифрыИзСтроки = ЦифрыИзСтроки + Символ;
            ЧислоНайдено = Истина;
          Иначе
            Если ЧислоНайдено Тогда
              Возврат ЦифрыИзСтроки;
            КонецЕсли;
      КонецЕсли;
    КонецЦикла;
            
    Возврат ЦифрыИзСтроки;
    
КонецФункции

Функция ЭтоЦифра(Символ)
  КодСимвола = КодСимвола(Символ);
  Возврат (КодСимвола >= 48 И КодСимвола <= 57)
КонецФункции
23 1dvd
 
28.05.14
08:51
(22)

Функция ЭтоЦифра(Символ)
//  КодСимвола = КодСимвола(Символ);
//  Возврат (КодСимвола >= 48 И КодСимвола <= 57)
  Возврат Символ>="0" И Символ<="9";
КонецФункции
24 ProProg
 
28.05.14
08:58
ПервыйРазделитель = Найти(Значение,",");
Если ПервыйРазделитель  > 0 Тогда
    Значение = Лев(Значение,ПервыйРазделитель-1);
    Значение = СокрЛП(Значение);
КонецЕсли;
25 DexterMorgan
 
28.05.14
11:58
(23) Сравнение символов производится по их кодам? Тогда Символ>="0" И Символ<="9" - 4 неявных преобразования к коду символа?
26 Мыш
 
28.05.14
12:08
Намудрили то чего

ЭтоЦифра = НЕ(Найти("0123456789",Символ)=0);
27 DexterMorgan
 
28.05.14
12:10
(26) Кстати
Функция ЭтоЦифра(Символ)
  КодСимвола = КодСимвола(Символ);
  Возврат (КодСимвола >= 48 И КодСимвола <= 57)
КонецФункции

это из типовой, и чего там мудреного?
28 IceSer1
 
28.05.14
12:10
а где пример с regEX -ом ??
29 Мыш
 
28.05.14
12:11
Цифра = Найти("0123456789",Символ)-1;
Если НЕ Цифра<0 Тогда

(27) В типовой много разного кода.
30 DexterMorgan
 
28.05.14
12:11
(26) в твоем варианте кстати сравнений в общем случае >2
31 DexterMorgan
 
28.05.14
12:12
(29) И?
32 Мыш
 
28.05.14
12:15
(31) Всё просто. Пользуешь что удобнее в конкретный момент.
33 DexterMorgan
 
28.05.14
12:17
(32) да понятно что несколько вариантов есть, чем (27) мудренее (29)?
34 Ksandr
 
28.05.14
12:19
Все просто же:
Встроенные функции языка (Script functions)
ИзвлечьПервуюЦифру (IzvlechPervuyuCifru)
Синтаксис:

ИзвлечьПервуюЦифру(<Строка>)
Параметры:

<Строка> (обязательный)

Тип: Строка.
Исходная строка.

Возвращаемое значение:

Тип: Цифра.
Цифра из строки.
Описание:

Выбирает первую цифру слева из строки.
35 DexterMorgan
 
28.05.14
12:22
(34) гыы =)
36 DexterMorgan
 
28.05.14
12:22
(34)
IzvlechPervuyuCifru
xDDD
37 Godofsin
 
28.05.14
12:23
"IzvlechPervuyuCifru" =))))
38 IceSer1
 
28.05.14
12:24
(34) Малдова ?
39 DexterMorgan
 
28.05.14
12:24
Тип: Цифра. - это тоже зачет)
40 Crush
 
28.05.14
12:30
Ну вы что вообще себе позволяете?! Сегодня ж не пятница!
Последовательно изучая тему согласился с (12)
далее еле удержался от (15)
Но когда дошел до комментария господина Ksandr....
вот тут меня и разнесло:)
41 Адинэснег
 
28.05.14
12:33
Функция ИзвлечьПервуюЦифру_6_ВХ_0235_АА_Пінюк_Юрий_Йосипович ()

Возврат 6;

КонецФункции
42 kosts
 
28.05.14
12:33
(34) Не универсально. Эта функция только в 8.3.5 появилась.
43 Адинэснег
 
28.05.14
12:35
(2) нифига, а если там буква?
44 Адинэснег
 
28.05.14
12:36
+(43)должно хотя бы Неопределено возвращать, а у тебя любой символ возвратит.
45 IceSer1
 
28.05.14
13:23
(41) можно так прописать также вернуть случайную цифру )
46 vmv
 
28.05.14
13:24
где решение
47 Godofsin
 
28.05.14
13:26
(46) нах решение, пофлудить прикольней
48 f_vadim
 
28.05.14
13:27
(43) читаем внимательно (0):
как с ЭТОЙ строчки извлечь ПЕРВУЮ цифру??
:)
49 Crush
 
28.05.14
14:02
Блондинка оформляет кредит. Менеджер:
- Тут сумму пишите прописью!
- А это как?
- Буквами!
- Мужчина, вы в своем уме? Как я цифры напишу буквами?
50 1dvd
 
28.05.14
14:15
Из реального:

(ТП) Итак, хорошо. Теперь кликаем кнопку «ОК».
(К) Кликаем ОК?
(ТП) Да, кликаем ОК.
(К) Кликаем ОК?
(ТП) Да, все верно, кликаем ОК.
(К) Итак, я кликаю ОК, правильно?
(ТП) Правильно, кликаем ОК.
[Следует небольшая пауза]
(К) Я кликнула «Отмена».
(ТП) ВЫ КЛИКНУЛИ «ОТМЕНА»???
(К) Именно это я должна была сделать, не так ли?
(ТП) Не-ет, вы должны были кликнуть «ОК».
(К) Я думала, вы сказали кликнуть «Отмена»
(ТП) НЕТ, я сказал кликнуть ОК.
(К) Ох-х.
(ТП) Теперь нам придется начинать с самого начала.
(К) Почему?
(ТП) Потому что вы кликнули «Отмена».
(К) Разве я не должна была кликнуть «Отмена»?
(ТП) Нет. Ладно, забудем это. Начинаем по порядку.
(К) Хорошо.
[Следующие пятнадцать минут повторяется длинная процедура конфигурирования.]
(ТП) Итак, хорошо. Ну, теперь-то вы готовы кликнуть «ОК»?
(К) Да.
(ТП) Отлично. Кликаем ОК.
[Следует пауза]
(К) Я кликнула «Отмена»…
51 StaticUnsafe
 
28.05.14
15:05
Функция ПреобразоватьНомерКЧислу(Номер)
    
    Цифры = "0123456789";        
    НовыйНомер = "";    
    
    Для i = 1 По СтрДлина(Номер) Цикл        
        Если Найти(Цифры,Сред(Номер,i,1)) Тогда
            НовыйНомер = НовыйНомер + Сред(Номер,i,1);
        КонецЕсли;
    КонецЦикла;
    
    Возврат Число(НовыйНомер);

КонецФункции
52 DexterMorgan
 
28.05.14
17:45
(51) ПреобразоватьНомерКЧислу("6 , ВХ 0235 АА") = 60235
А нужно 6
53 Timon1405
 
28.05.14
17:47
Поднимите правую ногу на несколько сантиметров от пола и начните двигать её в направлении часовой стрелки. Пока вы это делаете, используйте указательный палец правой руки, чтобы нарисовать в воздухе цифру 6. Ваша нога начнет поворачиваться против часовой стрелки, и вы ничего не сможете с этим поделать.
54 StaticUnsafe
 
28.05.14
17:53
(52) ну значит надо вставить "прервать" перед "конец если"
я дал заготовку ,можно ж свою голову включить хоть чуть чуть
55 DexterMorgan
 
29.05.14
10:41
(54) причем тут моя голова? я в (22) уже написал решение
AdBlock убивает бесплатный контент. 1Сергей