regex - Regular expression for extracting a series of hex numbers from a file -


i examining object dump of file , want figure out possible addresses.

the approach using involves using perl , regex extract words

the format of object file this

00000000000044444 <function>     44448: 48 ca             add ....     4444c: 48 ca 55          call ....     44450: 48 ca 8d 55       jmp.. 

i trying extract 48 ca 48 ca 55 48 ca 8d 55

currently, thought regex /(\s[0-9a-f][0-9a-f]\s)/g however, extracts every other, i.e48, 8d, 55, parse 48 , cant parse ca because previous space character has been consumed (at least understanding)

/(\s[0-9a-f][0-9a-f]\s)|([0-9a-f][0-9a-f]\s)/g parses things shouldnt add instruction dd

any how can extract these pairs of numbers deliminated space?

edit: updated more realistic format of file.

thank you

instead of \s, want word boundary \b.

while (<data>) {     @nums = m/\b([[:xdigit:]]{2})\b/g;     print "@nums\n"; }  __data__ 00000000000044444 <function>     44448: 48 ca 8d 55     4444c: 48 ca 8d 55     44450: 48 ca 8d 55 

update

given, made data more complicated instructions after hex codes, i'd lean toward making regex more restrictive so;

while (<data>) {     if (/^\s+\w+:((?:\s[[:xdigit:]]{2})+)\b/) {         @nums = split ' ', $1;         print "@nums\n";     } }  __data__ 00000000000044444 <function>     44448: 48 ca             add ....     4444c: 48 ca 55          call ....     44450: 48 ca 8d 55       jmp.. 

outputs:

48 ca 48 ca 55 48 ca 8d 55 

Comments

Popular posts from this blog

PHPMotion implementation - URL based videos (Hosted on separate location) -

c# - Unity IoC Lifetime per HttpRequest for UserStore -

I am trying to solve the error message 'incompatible ranks 0 and 1 in assignment' in a fortran 95 program. -