Вверх ↑
Этот топик читают: Гость
Ответов: 287
Рейтинг: 5
#1: 2020-12-23 12:48:18 ЛС | профиль | цитата
Доброго дня всем.Подскажите пожалуйста кто знает.Возможно ли сделать удаление строк по маске.Думал легко справлюсь а что-то затык.
Например:
Москва бла-бла-бла
Рига бла-бла-бла
Ленинград бла-бла-бла
Москва бла-бла-бла
Рига бла-бла-бла
Строки Москва удалить остальные оставить
карма: 0

0
Ответов: 783
Рейтинг: 168
#2: 2020-12-23 14:19:51 ЛС | профиль | цитата
Udokanec писал(а):
Возможно ли сделать удаление строк по маске.


Add(MainForm,2953706,21,105)
{
}
Add(Memo,1638275,287,56)
{
Top=40
Width=384
Height=221
Align=5
Strings=#130:Доброго дня всем.Подскажите пожалуйста кто знает.Возможно ли сделать удаление строк по маске.Думал легко справлюсь а что-то затык.|9:Например:|18:Москва бла-бла-бла|16:Рига бла-бла-бла|21:Ленинград бла-бла-бла|18:Москва бла-бла-бла|16:Рига бла-бла-бла|40:Строки Москва удалить остальные оставить|
}
Add(StrMask,4053873,259,168)
{
Point(doMask)
link(onTrue,10223121:doData,[])
}
Add(ArrayEnum,14754293,301,112)
{
link(onItem,4053873:doCompare,[(349,118)(349,160)(249,160)(249,174)])
link(Array,1638275:Array,[])
}
Add(DoData,10223121,308,175)
{
link(onEventData,3349208:In,[])
link(Data,14754293:Index,[])
}
Add(Hub,13026352,161,105)
{
InCount=2
link(onEvent1,8703861:doData,[(186,111)(186,181)])
link(onEvent2,14754293:doEnum,[])
}
Add(Label,8606382,21,154)
{
Width=384
Height=40
Align=2
Caption=""
AutoSize=1
}
Add(Button,8723097,105,112)
{
Left=255
Top=10
Caption="Del"
link(onClick,13026352:doEvent2,[])
}
Add(Edit,10925434,196,126)
{
Left=15
Top=10
Width=225
Hint=" - Маска для сравнения со строкой (* - любые символы, ? - один любой символ, # - одна любая цифра)"
Text="*Москва*"
ClearAfterEnter=1
link(onEnter,13026352:doEvent1,[(235,139)(235,97)(151,97)(151,111)])
}
Add(DoData,8703861,196,175)
{
link(onEventData,4053873:doMask,[])
link(Data,10925434:Text,[])
}
Add(LineBreak,5798107,238,70)
{
link(Out,1638275:doDelete,[])
Primary=[3349208,112,105]
}

карма: 15

0
Ответов: 875
Рейтинг: 101
#3: 2020-12-23 14:46:44 ЛС | профиль | цитата
так же можно RegExpr использовать


Add(Memo,1638275,322,35)
{
Top=40
Width=384
Height=221
Strings=#130:Доброго дня всем.Подскажите пожалуйста кто знает.Возможно ли сделать удаление строк по маске.Думал легко справлюсь а что-то затык.|9:Например:|18:Москва бла-бла-бла|16:Рига бла-бла-бла|21:Ленинград бла-бла-бла|18:Москва бла-бла-бла|16:Рига бла-бла-бла|40:Строки Москва удалить остальные оставить|
}
Add(Button,8723097,217,175)
{
Left=255
Top=10
Caption="Del"
link(onClick,12999485:doReplace,[])
}
Add(Edit,10925434,392,35)
{
Left=15
Top=10
Width=225
Hint=" - Маска для сравнения со строкой (* - любые символы, ? - один любой символ, # - одна любая цифра)"
Text="Москва*."
ClearAfterEnter=1
}
Add(RE_Replace,12999485,322,175)
{
Point(Expression)
link(onReplace,1638275:doText,[(428,181)(428,121)(310,121)(310,62)])
link(SourceStr,1638275:Text,[])
link(Expression,10925434:Text,[(335,156)(398,156)])
}
карма: 1

0
Ответов: 287
Рейтинг: 5
#4: 2020-12-23 15:13:06 ЛС | профиль | цитата
Gunta
flud
Спасибо
карма: 0

0
Ответов: 207
Рейтинг: 14
#5: 2020-12-23 18:01:46 ЛС | профиль | цитата
flud писал(а):
так же можно RegExpr использовать

Можно конечно, только немного не так. ТС нужно удалять строки, а не слова.
Вот пример с удалением строк.

Add(MainForm,16628527,154,182)
{
Width=391
Height=374
}
Add(Button,15147602,154,280)
{
Left=10
link(onClick,3967937:doEvent1,[])
}
Add(RE_Replace,1030913,245,287)
{
Point(Expression)
link(onReplace,10735415:doText,[])
link(SourceStr,10735415:Text,[(251,271)(286,271)(286,313)(328,313)])
link(Expression,4851424:FString,[])
}
Add(RichEdit,10735415,322,273)
{
Left=5
Top=25
Width=365
Height=305
Strings=#130:Доброго дня всем.Подскажите пожалуйста кто знает.Возможно ли сделать удаление строк по маске.Думал легко справлюсь а что-то затык.|9:Например:|18:Москва бла-бла-бла|16:Рига бла-бла-бла|21:Ленинград бла-бла-бла|18:Москва бла-бла-бла|16:Рига бла-бла-бла|40:Строки Москва удалить остальные оставить|
ScrollBars=3
}
Add(Edit,1820605,252,175)
{
Left=100
Width=120
Text="Москва"
}
Add(FormatStr,4851424,252,224)
{
Mask="([^\x0D\x0A]+|)%1.*?(\x0D\x0A|$)"
Point(FString)
link(Str1,1820605:Text,[])
}
Add(Hub,3967937,203,280)
{
link(onEvent1,4851424:doString,[(237,286)(237,230)])
link(onEvent2,1030913:doReplace,[])
}

карма: 2

0
5
Сообщение
...
Прикрепленные файлы
(файлы не залиты)