Главная страницаОбратная связьКарта сайта

Поиск текста и его замена



'Три примера поиска и замены одного строкового выражения другим
'Первый пример показан на основе функций Split и Join. SourceString - текст для
'поиска, ReplaceThIs - какое искать выражение в тексте, WithThIs - на что менять
'найденное выражение

'Пример 1

Function ReplaceAll(SourceString As String, ReplaceThis As String, WithThis As String)
Dim Temp As Variant

Temp = Split(SourceString, ReplaceThis)
ReplaceAll = Join(Temp, WithThis)
End Function

Private Sub Form_Load()
'этот пример меняет все найденные выражения "go" на "bad", в тексте "good boy go home"
MsgBox ReplaceAll("good boy go home", "go", "bad")
End Sub

'Пример 2

Public Function ReplaceAll(searchstring As String, findstring As String, replacestring As String) As String
Dim curpos As Long

curpos = 1
Do
curpos = InStr(curpos, searchString, findstring)
searchString = Left$(searchString, curpos - 1) & replaceString & Right$(searchString, Len(searchstring) - curpos - Len(findstring) + 1)
Loop Until InStr(searchString, findstring) = 0
ReplaceAll = searchString
End Function

Private Sub Form_Load()
MsgBox ReplaceAll("good boy go home", "go", "bad")
End Sub

'Пример 3

Private Function ReplaceSubString(str As String, ByVal substr As String, ByVal newsubstr As String)
Dim pos As Double
Dim startPos As Double
Dim new_str As String

startPos = 1
pos = InStr(str, substr)
Do While pos > 0
new_str = new_str & Mid$(str, startPos, pos - startPos) & newsubstr
startPos = pos + Len(substr)
pos = InStr(startPos, str, substr)
Loop
new_str = new_str & Mid$(str, startPos)
ReplaceSubString = new_str
End Function

Private Sub Command1_Click()
Text1.Text = ReplaceSubString(Text1.Text, " <", "<>")
'Примеры использования
'Text1.Text = ReplaceSubString(Text1.Text, ">" & vbCrLf, ">")
'Text1.Text = ReplaceSubString(Text1.Text, "><", ">" & vbCrLf & "<")
'Text1.Text = ReplaceSubString(Text1.Text, vbCrLf, "")
'Text1.Text = ReplaceSubString(Text1.Text, "><", ">" & vbCrLf & "<")
End Sub


Обсудить статью на форуме


Если Вас заинтересовала или понравилась информация программирование на Visual Basic - "Поиск текста и его замена", Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу:

Так же Вы можете задать вопрос по работе этого модуля или примера через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!
   


Copyright © 2008 - 2017 Дискета.info