|
v7: сравнение строки | ☑ | ||
---|---|---|---|---|
0
zladenuw
16.11.11
✎
17:18
|
есть две строки. разница только в пробелах.
CORDA FLIPPY 2 2 CORDA FLIPPY 2 2 как реализовать проверку что эти два поля равны. Возможно что пробел будет или в поле 1 или в поле 2. Через найти не катит :( |
|||
1
Ёпрст
16.11.11
✎
17:19
|
Выкинуть пробелы через стрЗаменить и сравнить
|
|||
2
Ёпрст
16.11.11
✎
17:20
|
или использовать Like в тексте запроса
|
|||
3
zladenuw
16.11.11
✎
17:22
|
в запросе к двум полям ? а как это в 7.7...
|
|||
4
Ёпрст
16.11.11
✎
17:22
|
(3) да.
|
|||
5
zladenuw
16.11.11
✎
17:25
|
(1) не помогло :(
|
|||
6
andrewks
16.11.11
✎
17:26
|
(5) да ну!
а, кстати, CORDA FLIPPY должно быть "любо" CORDAFLIPPY, или нет? |
|||
7
Ёпрст
16.11.11
✎
17:26
|
(5) жарю еще один метод - СокрЛП()
|
|||
8
Vadik_62
16.11.11
✎
17:26
|
(5) не может быть.. выкладывай код
|
|||
9
Ёпрст
16.11.11
✎
17:26
|
+7 Дарю т.е
|
|||
10
Vadik_62
16.11.11
✎
17:26
|
(7) Это не то, что ему нужно
|
|||
11
zladenuw
16.11.11
✎
17:30
|
if Найти(Attribute,"Наименование")>0 then
Value = СокрЛп(tValue); Если (New = 0) and (СтрЗаменить(СокрЛП(oldValue)," ","") <> СтрЗаменить(Value," ","")) and (Value<>0) and(Найти(СокрЛП(oldValue),Value)=0) Тогда ВремТбЗн.УстановитьЗначение(ВремТбЗн.НомерСтроки,Attribute,oldValue); ВремТбЗн.УстановитьЗначение(ВремТбЗн.НомерСтроки,"н"+Attribute,tValue); ИначеЕсли New=1 Тогда ВремТбЗн.УстановитьЗначение(ВремТбЗн.НомерСтроки,"н"+Attribute,tValue); КонецЕсли; endif; |
|||
12
Ёпрст
16.11.11
✎
17:31
|
(11) ёпта, че за бредо код ?
Либо пиши всё по англицки, либо не выёживайся и пиши по-русски |
|||
13
zladenuw
16.11.11
✎
17:32
|
(12) не мой код :(..... переписываю.... часть на русский
|
|||
14
Ёпрст
16.11.11
✎
17:33
|
(13) и где ты видишь, что
СтрЗаменить(СокрЛП(oldValue)," ","") <> СтрЗаменить(Value," ","") ?? |
|||
15
Ёпрст
16.11.11
✎
17:33
|
и товарищь отладчик что говорит по этому поводу ?
|
|||
16
zladenuw
16.11.11
✎
17:34
|
в таблице на форме.
|
|||
17
zladenuw
16.11.11
✎
17:35
|
(14) что не равное
|
|||
18
Ёпрст
16.11.11
✎
17:35
|
(16) че?
|
|||
19
Ёпрст
16.11.11
✎
17:37
|
Ёпта..
Сообщить((СокрЛП(oldValue)) Сообщить(СокрЛП(Value)) |
|||
20
andrewks
16.11.11
✎
17:38
|
Функция ТипаЛайк(Стр1,Стр2)
ТекСтр1=СокрЛП(Стр1); НовСтр1=СтрЗаменить(ТекСтр1," "," "); Пока (НовСтр1<>ТекСтр1) Цикл ТекСтр1=НовСтр1; НовСтр1=СтрЗаменить(ТекСтр1," "," "); КонецЦикла; ТекСтр2=СокрЛП(Стр2); НовСтр2=СтрЗаменить(ТекСтр2," "," "); Пока (НовСтр2<>ТекСтр2) Цикл ТекСтр2=НовСтр2; НовСтр2=СтрЗаменить(ТекСтр2," "," "); КонецЦикла; Если (ТекСтр1=ТекСтр2) Тогда Возврат 1; Иначе Возврат 0; КонецЕсли; КонецФункции |
|||
21
zladenuw
16.11.11
✎
17:38
|
(20) спс. щас попробую
|
|||
22
Vadik_62
16.11.11
✎
17:42
|
(11) не хотел бы я столкнуться с подобным кодом.. ужаснах!
|
|||
23
AlexYurg
16.11.11
✎
17:42
|
А еще могут быть русские/латинские буквы (АВЕКМНОРСТУХ), которые выглядят одинаково, но на самом деле различны.
|
|||
24
villy
16.11.11
✎
18:37
|
(20) напомнил мне анекдот про "вечный кайф" )))
|
|||
25
vova1122
17.11.11
✎
14:01
|
(20) цикла здесь ненужно . СтрЗаменить делает замену всех пробелов за один проход
|
|||
26
andrewks
17.11.11
✎
14:11
|
(25) хренушки. ты не учитываешь вариант "пробела", состоящего из произвольного (более одного) числа символов пробела
|
|||
27
vova1122
17.11.11
✎
14:17
|
(26) Извиняюсь, не заметил что в приведеном коде пробелы сокращаются до одного. Хотя в даном случае правельнее вообще удалить все робелы...
|
|||
28
KishMish
17.11.11
✎
14:30
|
(27) скрипка лиса = скрип кал и са?
|
|||
29
Voronve
17.11.11
✎
14:53
|
(0)
Функция глСравнитьСтроки(<твоя строка 1>, <твоя строка 2>) Экспорт спОДИН = глРазложить(<твоя строка 1>); спДва = глРазложить(<твоя строка 2>); Результат = 1; Если спОДИН.РазмерСписка() = спДВА.РазмерСписка() Тогда Для I = 1 По спОДИН.РазмерСписка() Цикл Если спОДИН.ПолучитьЗначение(I) <> спДВА.ПолучитьЗначение(I) Тогда Результат = 0; Прервать; КонецЕсли; КонецЦикла; Иначе Результат = 0 КонецЕсли; Возврат Результат; КонецФункции функцию глРазложить выдерни из ТиС |
|||
30
zladenuw
17.11.11
✎
15:03
|
(29) буду знать
|
|||
31
1Сергей
18.11.11
✎
08:24
|
Функция УбратьСпейсы(Знач ИзСтроки)
Пока Найти(ИзСтроки, " ")>0 Цикл ИзСтроки = СтрЗаменить(ИзСтроки, " ", " "); КонецЦикал; Возврат ИзСтроки; КонецФункции |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |