powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / найти скобку в тексте и удалить все что между ними
7 сообщений из 7, страница 1 из 1
найти скобку в тексте и удалить все что между ними
    #36160191
HANK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
привет всем!
вопрос может и дурацкий но

select substr(alltrim(field1),at('(',alltrim(field1)),3) from table

по идеи должен выдавать строковое выражение длинной 3 символа если нашел открывающуюся круглую скобку, но он не делает так( пробелы добавляет..
если взять другой символ например букву А то все ок
подскажите где рыть?*
...
Рейтинг: 0 / 0
найти скобку в тексте и удалить все что между ними
    #36160220
Tohan_ORA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HANK
Re: найти скобку в тексте и удалить все что между ними

Между скобкой и чем? В смысле вырезать часть?
Код: plaintext
1.
2.
'abcd(677588'->='677'
или
'abcd(677588'->='abcd(588'
...
Рейтинг: 0 / 0
найти скобку в тексте и удалить все что между ними
    #36160239
HANK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
текст 'abcd(677588)efg' - это куча записей таких но везде разные слова

хочу получить 'abcdefg' - без скобок и все что меж ними..

а селект показан для теста, и он выбирает 3 символа вместе со скобкой и заменяет пробел
согласну селекту из примера выходит?
'abcd(677588)efg' - > '( '
...
Рейтинг: 0 / 0
найти скобку в тексте и удалить все что между ними
    #36160256
Tohan_ORA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HANKтекст 'abcd(677588)efg' - это куча записей таких но везде разные слова

хочу получить 'abcdefg' - без скобок и все что меж ними..


Копай в сторону stuff,вот пример:
Код: plaintext
1.
2.
CREATE CURSOR cr(st c( 20 ))
INSERT INTO cr values('abcd(677588)efg')
INSERT INTO cr values('975(7588) fg')
Код: plaintext
SELECT  st,STUFF(st,AT('(',st), 1 +AT(')',st)-AT('(',st),'') from cr
...
Рейтинг: 0 / 0
найти скобку в тексте и удалить все что между ними
    #36160298
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
select GetWordNum(field1, 1 ,"(") + GetWordNum(field1, 2 ,")") from table
...
Рейтинг: 0 / 0
найти скобку в тексте и удалить все что между ними
    #36160308
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, какой-бы способ вы не выбрали, выражение надо обязательно в явном виде либо дополнить концевыми пробелами до некоторой фиксированной величины PADR(...,20), либо использовать CAST() для явного указания размерности. В противном случае, размерность полученного поля будет равна размерности первого вычисленного выражения. Если там ничего не оказалось, то размерность будет C(1).
...
Рейтинг: 0 / 0
найти скобку в тексте и удалить все что между ними
    #36161853
HANK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо - стафф отлично сработаЛ!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / найти скобку в тексте и удалить все что между ними
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]