2013/1/9 Johnny Rosenberg <[email protected]>: > 2013/1/9 gordom <[email protected]>: >> W dniu 2013-01-09 07:17, Brian Barker pisze: >> >>> At 19:58 08/01/2013 +0100, Gordom Noname wrote: >>>> >>>> I would appreciate your help with the regular expressions. I have a >>>> document consisting of hundreds of lines. A small sample is here: >>>> >>>> Set: 01SA34509 >>>> 0109SA >>>> 011017B >>>> 01020207B >>>> 010902B >>>> 01090002 >>>> 011007B >>>> 01090001 >>>> 090110 >>>> Set: 0134501 >>>> 011101 >>>> 01110102 >>>> 01110103 >>>> 080908 >>>> Set: 0111679SE >>>> 0111SE >>>> >>>> I need to delete all text except these lines started with word "Set". >>>> If I use "set:.+" regular expression, all these lines, that should be >>>> kept, are selected. I cant find a way to reverse this selection. I >>>> tried "[^set:.+].+" and "[^(set:.+)].+" but they don't work. Could you >>>> please give me any clues? >>> >>> >>> I think this is fairly simple. I'm assuming that your "lines" are >>> actually separate paragraphs, in fact: that they are separated by >>> paragraph breaks, not line breaks, that is. >>> >>> o Using Find & Replace with "Regular expressions" ticked, search for >>> ^Set and click Find All. This will select just those words, where they >>> occur at the start of a line, not the whole lines. >>> o Click the down-arrow at the right of the Apply Style window in the >>> Formatting toolbar, and select some (paragraph) style different from the >>> style of your text (perhaps Heading?). Since this is a paragraph style, >>> it will apply to the whole of each relevant line (paragraph), not just >>> the selected occurrences of the word "Set". >>> o Back in the Find & Replace dialogue, click "Search for Styles", choose >>> your original style (perhaps Default?) in the "Search for" box, and >>> click Find All. >>> o Press Delete to remove all the unwanted lines. >>> o Tick "Regular expressions" again, and search for ^$ - replacing with >>> nothing. Click Replace All. This removes the empty paragraphs left by >>> the previous process. >>> o Go to Edit | Select All (or press Ctrl+A) and use the Apply Style >>> window again to reset your paragraph style appropriately (to Default?). >>> >>> I trust this helps. >>> >>> Brian Barker >>> >>> >>> >> >> It seems to work indeed. Thank you very much :-). Regards, >> >> gordom > > This worked for me with your example lines a minute ago: > > Ctrl+h (or whatever method you prefer for opening the Search and > Replace dialogue). > ☒ Regular expressions > Search for: ^[^S][^e][^t].*$ > Replace with: (leave empty) > Click Replace All > > Search for: ^$ > Leave everything else as is > Click Replace All. > > Done. > > The funny thing is that the last part didn't work for me maybe ten > minutes ago, but I must have done something slightly different that > time… > > > So, in short terms: > 1. Replace all ^[^S][^e][^t].*$ with nothing (regular expressions on). > 2. Replace all ^$ with nothing (regular expressions still on). > Done. > > Step 1 would also erase lines starting with ”set” and ”SET”, so if you > want to keep all possible combinations for the word ”set”, you should > rather try: ^[^Ss][^Ee][^Tt].*$ > I didn't try that myself, but it should work. There is always Undo if > it doesn't… > > > Kind regards > > Johnny Rosenberg > ジョニー・ローゼンバーグ
Okay, forget it. This keeps everything that starts with an S, not only the Set lines… If that's not at problem, this is a fast way, otherwise it could require quite some manual work or further Seach and Replace operations. I'll give it a few more thoughts… Kind regards Johnny Rosenberg ジョニー・ローゼンバーグ -- For unsubscribe instructions e-mail to: [email protected] Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/ Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette List archive: http://listarchives.libreoffice.org/global/users/ All messages sent to this list will be publicly archived and cannot be deleted
