Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: поиск в строке
 
 автор: Gold Man   (17.03.2010 в 19:07)   личное сообщение
 
 

Последний раз, надеюсь, беспокою сегодня сообщество.
test = "[\-\(\)+ !?.']"
If Str1 Like test Then
удаление
Else
обработка
End If

Мне нужно обработать строку только в том случае, если в ней отсутствуют небуквенные символы. При наличии знака вопроса, дефиса, скобок, пробела, точки и т.д., строка удаляется
Как составить строку test, чтобы при наличии в строке Str1 хотя бы одного символа из Test выскакивала истина?

  Ответить  
 
 автор: Lukas   (17.03.2010 в 19:38)   личное сообщение
 
 

При наличии знака вопроса, дефиса, скобок, пробела, точки и т.д., строка удаляется
А проще удалить "плохие" записи скопом до начала обработки.

  Ответить  
 
 автор: Мюллер   (17.03.2010 в 19:38)   личное сообщение
 
 

В соседней ветке был пример разбора слов на символы
Вот один из вариантов, приведенных там

test = "[\-\(\)+ !?.']"

Dim i As Integer
For i =1 to Len(test)
s = Mid(test, i, 1)
CurrentDB.Execute "Delete FROM Таблица WHERE Str1 Like*'" & s & "'* '"

Next i

Как то так. Возможно с кавычками и апострофами я напутал. Уже не помню точно синтаксис конструкции. Но суть должна быть понятна

  Ответить  
 
 автор: Explorer   (17.03.2010 в 19:45)   личное сообщение
 
 

в этом случае ИМХО поможет отбор LIKE по маске (числа 0-9 спецсимволы и т.п.) или NOT LIKE (только буквы, например)

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList