[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Easy for Some
From: |
Anselm Helbig |
Subject: |
Re: Easy for Some |
Date: |
Tue, 05 Jan 2010 11:01:31 +0100 |
Hi!
> I'm not coder but i needed to extract some information from a text file and
> some one pointed me in this direction.
>
> I have a file like this, could have up to a 1000 keyframes.:
>
>
>
> Effects Sound Keys #1 Output 1 #22
> Frame
> 0 0.17489
> 1 0.261281
> 2 0.361762
> 3 0.400085
> 4 0.411538
> 5 0.434799
> 6 0.41712
> 7 0.422151
> 8 0.43181
> 9 0.411811
>
> Just to clarify the spacings: ( 0 0.17489 )
> Just to clarify the spacings: (tab0tab 0.17489 tab)
>
> and i want to be left with just the raw values like this:
>
>
> 0.17489
> 0.261281
> 0.361762
> 0.400085
> 0.411538
> 0.434799
> 0.41712
> 0.422151
> 0.43181
> 0.411811
>
>
> I am a complete newbie, i downloaded aquamacs emacs yesterday, tried to use
> replace string as a guess...?? no joy. Dont have anyone to ask, any help is
> greatly appreciated.
There are three obvious ways to achieve this:
1. use regular expressions
if it is sufficient to get rid of the leading whitespace and number:
M-x query-replace-regexp RET ^\s-*[0-9]+\s-* RET RET
If you need to get rid of trailing whitespace as well:
M-x query-replace-regexp RET ^\s-*[0-9]+\s-*\([.0-9]+\)\s-*$ RET \1 RET
Don't be afraid, regular expressions are easier to write than to
read. Regular expressions are the tool of choice if you want to
touch only lines matching a pattern.
2. with keyboard macros
Go to start of the first line, press `C-x (' to start your keyboard
macro and do whatever you need to clean up one line and go to the
start of the next line, end your keyboard macro with `C-x )'.
Repeat your keyboard macro by giving a big prefix to C-x e,
e.g. `C-u 1000 C-x e'. It will stop when it reaches the end of the
file.
Keyboard macros are superior if you need to do some more complex
manipulations on your text, but they can easily break unless your
text structure is very rigid. They can also be a bit slow if you
need to go through a big file. Also, of course, it's easy to
understand how a keyboard macro works than to grok regular
expressions.
3. use rectangle functions
place your cursor at the start of the first line and set the mark
with `C-SPACE'. Go to the end of the file on the last line so that
the cursor (`point' in emacs lingo) is on the first column you want
to keep. Delete the rectangular portion of the buffer with
`C-x r k'.
HTH,
Anselm
--
Anselm Helbig - http://mnemonikk.org/
- Easy for Some, marioepsley, 2010/01/04
- Re: Easy for Some, Vicente Hernando Ara, 2010/01/04
- Re: Easy for Some, Peter Dyballa, 2010/01/04
- Re: Easy for Some, Steve Revilak, 2010/01/04
- Re: Easy for Some, Andreas Politz, 2010/01/04
- Re: Easy for Some, Memnon Anon, 2010/01/05