powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / определение букв в номерах
12 сообщений из 12, страница 1 из 1
определение букв в номерах
    #39421825
Vigo1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день! имеется текстовое поле в котором 7значные числовые номера, но иногда вместо цифр могут попадаться буквы (погрешности распознавания JPG файлов)

Как можно определить такие "битые" номера? понимаю, что можно сделать в лоб простым перебором символов, но есть ли более красивое решение?

Спасибо
...
Рейтинг: 0 / 0
определение букв в номерах
    #39421842
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vigo1,
Код: sql
1.
2.
SELECT число
FROM Таблица where  isnumeric(число)=0 
...
Рейтинг: 0 / 0
определение букв в номерах
    #39421845
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vigo1Как можно определить такие "битые" номера?
Надо понимать, номер - в строковой переменной? Проверить Trim(Num) = Trim(CStr(Val(Num))).
...
Рейтинг: 0 / 0
определение букв в номерах
    #39422161
Фотография гурД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vigo1имеется текстовое поле в котором 7-значные числа, но иногда вместо цифр могут попадаться буквы (погрешности распознавания JPG файлов)

Как можно определить такие "битые" номера? ... красивое решение?

1. Попытаться или импортировать в поле aka Numeric typе, или после импорта сменить тип поля.
2. Отксерить на спец чесночную бумагу Dubo Pinocchio: она в случае дефекта данных начинает краснеть и скукоживатся...
...
Рейтинг: 0 / 0
определение букв в номерах
    #39422813
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_rusimportVigo1,
Код: sql
1.
2.
SELECT число
FROM Таблица where  isnumeric(число)=0 



Неверно. Такой способ легко пропустит буквы и символы. К примеру: "1E5", "&H7".

Простой перебор символов не так уж и плох, кстати. В том числе и по скорости.
...
Рейтинг: 0 / 0
определение букв в номерах
    #39422853
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFguest_rusimportVigo1,
Код: sql
1.
2.
SELECT число
FROM Таблица where  isnumeric(число)=0 



Неверно. Такой способ легко пропустит буквы и символы. К примеру: "1E5", "&H7".

Простой перебор символов не так уж и плох, кстати. В том числе и по скорости.
Такой запрос выводит все значения где содержатся нецифровые символы
Код: sql
1.
2.
SELECT число
FROM Таблица where число Like "*[!0-9]*" 
...
Рейтинг: 0 / 0
определение букв в номерах
    #39422911
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndrFguest_rusimportVigo1,
Код: sql
1.
2.
SELECT число
FROM Таблица where  isnumeric(число)=0 



Неверно. Такой способ легко пропустит буквы и символы. К примеру: "1E5", "&H7".

Простой перебор символов не так уж и плох, кстати. В том числе и по скорости.
У Панурга , конечно, красивей, но и мой запрос для таких частных случаев легко подправить
Код: sql
1.
2.
3.
SELECT число
FROM Таблица
WHERE isnumeric(число)=0 or число like '*e*' or число like '*h*' or число like '*,*'



или ещё чего забыл ?
...
Рейтинг: 0 / 0
определение букв в номерах
    #39422934
хм-м-м
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
число like '*e*' or число like '*h*' or число like '*,*'

можно, наверное, собрать в список
Код: sql
1.
число like '*[eh,]*'
...
Рейтинг: 0 / 0
определение букв в номерах
    #39422950
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
хм-м-м,

точно - можно :)
...
Рейтинг: 0 / 0
определение букв в номерах
    #39422986
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну тады уж и от isnumeric() избавиться, и сделать
Код: vbnet
1.
число LIKE '*[~0-9]*'
...
Рейтинг: 0 / 0
определение букв в номерах
    #39423042
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinaНу тады уж и от isnumeric() избавиться, и сделать
Код: vbnet
1.
число LIKE '*[~0-9]*'


не удивлюсь, если следующий вопрос будет, к примеру - " А у меня некоторые восмерки распознаются как тройки , т.к. местами не пропечатались. Как бы мне красиво это исправить...?"
...
Рейтинг: 0 / 0
определение букв в номерах
    #39423430
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot guest_rusimport]Akinaне удивлюсь, если следующий вопрос будет, к примеру - " А у меня некоторые восмерки распознаются как тройки , т.к. местами не пропечатались. Как бы мне красиво это исправить...?"

Ну приходилось обрабатывать всякое. К примеру, дату вводили в тексте и вполне могли ввести:

I-2З-2O18 - сколько тут ошибок?

Или при вводе ФИО использовали символы как русские, так и английские символы - это тоже приходилось прекращать и блокировать...
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / определение букв в номерах
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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