Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ? Манипуляции со строковым выражением ? / 6 сообщений из 6, страница 1 из 1
07.03.2004, 05:56
    #32433611
Bastard
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
? Манипуляции со строковым выражением ?
Здравствуйте !
1) Есть проблема: необходимо вычислить сколько пробелов в строке ! С помощью какой функции это можно сделать ?
Т.е.: "БЕНЗИН АВТОМОБИЛЬНЫЙ С СОДЕРЖАНИЕМ СЕРЫ" как посчитать, что внутри строки 4 пробела и затем вычленить слова: "бензин" "автомобильный" "содержанием" "серы" ???
Дайте пример пожалуйста, если можно !

2) В таблице в поле текстового типа есть записи такого рода:
"@ ПЛАТА МАТЕРИНСКАЯ" или же "& блок питания". Мне нужно поубирать из строк хлам: символы @,&, причем чтобы значащая информация осталась !
Подскажите пожалуйста, как это сделать ?
...
Рейтинг: 0 / 0
07.03.2004, 11:01
    #32433653
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
? Манипуляции со строковым выражением ?
1. split
2. replace
...
Рейтинг: 0 / 0
07.03.2004, 12:39
    #32433674
Serge Gavrilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
? Манипуляции со строковым выражением ?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Private Declare Function IsCharAlphaNumeric Lib  "user32"  Alias  "IsCharAlphaNumericA"  (ByVal cchar As Byte) As Long
 
Function RemoveGarbage(ByVal vstrIn As String)
    Dim i As Long
    Dim strChar As String
    Dim strOut As String
    For i =  1  To Len(vstrIn)
        strChar = Mid$(vstrIn, i,  1 )
        If IsCharAlphaNumeric(Asc(strChar)) =  1  Or strChar =  " "  Then strOut = strOut & strChar
    Next
    RemoveGarbage = Trim$(strOut)
End Function
...
Рейтинг: 0 / 0
07.03.2004, 12:48
    #32433677
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
? Манипуляции со строковым выражением ?
К последнему решению, возможно, придется добавить проверку на точку, запятую и т.д. Кстати, вот другой вариант:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Function RemoveGarbage(ByVal vstrIn As String, ByVal vstrGarbage As String) As String
    Dim i As Long
    For i =  1  To Len(vstrGarbage)
        vstrIn = Replace(vstrIn, Mid(vstrGarbage, i,  1 ), "")
    Next
    RemoveGarbage = Trim$(vstrIn)
End Function
...
Рейтинг: 0 / 0
07.03.2004, 12:56
    #32433680
Serge Gavrilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
? Манипуляции со строковым выражением ?
Только для A97 надо использовать свой Replace.
От меня до сих пор требуют, чтобы код работал в A97 :(
...
Рейтинг: 0 / 0
07.03.2004, 13:13
    #32433686
Serge Gavrilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
? Манипуляции со строковым выражением ?
Еще вариант:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Function RemoveGarbage(ByVal vstrIn As String)
    Dim i As Long
    Dim strChar As String
    Dim strOut As String
    For i =  1  To Len(vstrIn)
        strChar = Mid$(vstrIn, i,  1 )
        If strChar Like  "[!@#&]"  Then strOut = strOut & strChar
    Next
    RemoveGarbage = Trim$(strOut)
End Function
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ? Манипуляции со строковым выражением ? / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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