Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Поиск и замена по шаблону Добавлено: 02.03.09 14:48  

Автор вопроса:  myagi
В тексте необходимо убрать знаки случайного абзаца.

Данные включения в ворде (с галкой "подстановочные знаки") ищутся по шаблону "^13[! ]" - первый символ - знак абзаца, а второй символ означает отсутствие пробела. Можно было бы справиться стандартной заменой вышеприведенного выражения просто на пробел! НО! будет съедаться этот второй символ описанный в виде [! ]. А получать это значение динамически по шаблону в процессе замены не представляется возможным. Пишу макрос в VBA:

Sub Fix1_WrongIndent()

    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "^13[! ]"
        .Replacement.Text = " "
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = True
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    Selection.Find.Execute ReplaceWith:=" " + Right(Selection.Text, 1), Replace:=wdReplaceAll
  
End Sub

И он почему то заменяет не текущий символ в поиске, а на первый найденный :(
Больше ничего придумать не могу.
Надеюсь на вашу помощь.

Ответить

  Ответы Всего ответов: 4  

Номер ответа: 1
Автор ответа:
 myagi



Вопросов: 2
Ответов: 4
 Профиль | | #1 Добавлено: 03.03.09 15:12
Есть текст вида:
[img]http://img23.imageshack.us/img23/5417/screenshotigi.jpg[/img]
Цифрой 1 обозначен абзац.
Цифрой 2 обозначен паразитный абзац, от которых необходимо избавиться по всему тексту.
Какое условие будет описывать случай 2 и не включать 1?
Спасибо

Ответить

Номер ответа: 2
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #2
Добавлено: 03.03.09 21:36
Заменяй пустой строкой.

Ответить

Номер ответа: 3
Автор ответа:
 myagi



Вопросов: 2
Ответов: 4
 Профиль | | #3 Добавлено: 04.03.09 09:15
что заменять, простите?

Ответить

Номер ответа: 4
Автор ответа:
 GDK



Вопросов: 13
Ответов: 348
 Профиль | | #4 Добавлено: 04.03.09 13:01
Типа, надо заменить все символы абзаца, перед которыми не стоит точка? Или надо заменить все символы абзаца, перед которыми стоит пробел? Короче, ничего сверхсложного в любом случае.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам