Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Выборка символов  [new]
RIGOR
Member

Откуда:
Сообщений: 89
Добрый день.Имеется таблица с полями типа CHR(например, ФАМИЛИЯ). Необходимо выбрать записи, где кроме кирилицы присутствуют любые другие недопустимые символы. Заранее благодарен
3 авг 06, 13:45    [2960191]     Ответить | Цитировать Сообщить модератору
 Re: Выборка символов  [new]
ВладимирМ
Member

Откуда: г. Москва
Сообщений: 7864
* Допустимые символы
LOCAL lcAccept
lcAccept = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"+;
"АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ"

* Собственно анализ
SELECT * ;
FROM MyTab ;
WHERE EMPTY(ChrTran(MyField,m.lcAccept,"")) = .F.

Правда, функция EMPTY() игнорирует пробелы, табуляцию, перевод строки и возврат каретки. Если эти символы также относятся к запрещенным, то вместо EMPTY() анализируй количество оставшихся после ChrTran() символов через LEN()
3 авг 06, 13:53    [2960251]     Ответить | Цитировать Сообщить модератору
 Re: Выборка символов  [new]
AleksMed
Member

Откуда: Россия, Серпухов-Москва
Сообщений: 1546
select <FldName>,CHRTRAN(UPPER(<FldName>),chrtran(UPPER(<FldName>),"ABCD...",""),"") as Q from <TableName> having(EMPTY(Q))=.F.
3 авг 06, 13:57    [2960276]     Ответить | Цитировать Сообщить модератору
 Re: Выборка символов  [new]
RIGOR
Member

Откуда:
Сообщений: 89
Большое спасибо. ВладимирМ. Все работает
3 авг 06, 14:06    [2960331]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить