The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > UNIX for Dummies Questions & Answers
.
google unix.com



UNIX for Dummies Questions & Answers If you're not sure where to post a UNIX or Linux question, post it here. All UNIX and Linux newbies welcome !!

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
Question on Regular Expression Katkota UNIX for Dummies Questions & Answers 14 05-18-2008 06:11 PM
question (regular expression related) metalwarrior UNIX for Dummies Questions & Answers 1 02-03-2008 11:51 PM
Regular expression question umen Shell Programming and Scripting 7 11-21-2007 09:45 PM
Regular Expression Question Krispy UNIX for Dummies Questions & Answers 3 01-20-2006 10:36 AM
question about regular expression brentdeback Shell Programming and Scripting 0 11-14-2005 04:04 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Search this Thread Rate Thread Display Modes
  #1 (permalink)  
Old 05-14-2008
Katkota Katkota is offline
Registered User
  
 

Join Date: Oct 2007
Posts: 118
Red face Regular Expression question

Folks;
I have 3 questions & any help with them would be really appreciated:

If i have a list of directories, for example:

/fs/pas/2007/4/6/2634210/admdat/examin
/fs/pas/2007/4/6/2634210/admdat2/stat
/fs/pas/2007/4/6/2634210/admdat3/data
/fs/pas/2007/4/6/2634210/im_2/0b.dcm

Now; my questions are:
1. How to use RE to extract the last file such as "examin and stat,..."?

2. How to use RE to extract the parent directory for the last file. such as "amdat, amdat2, im_2,..."?

3. How to use RE to extract the date in the middle "2007/4/6"?
  #2 (permalink)  
Old 05-14-2008
era era is offline Forum Advisor  
Herder of Useless Cats (On Sabbatical)
  
 

Join Date: Mar 2008
Location: /there/is/only/bin/sh
Posts: 3,652
Are we talking Perl or grep or something else here? There are many different regex flavors and the matching strategy would also depend on what infrastructure is available in the tool.

For Perl, something like m%/(\d{4}/\d{1,2}/\d{1,2})/\d+/([^/]+)/([^/]+)$% would get the substrings you request into $3, $2, and $1, respectively.

Last edited by era; 05-14-2008 at 03:58 PM.. Reason: Add m%...% wrapper
  #3 (permalink)  
Old 05-14-2008
Katkota Katkota is offline
Registered User
  
 

Join Date: Oct 2007
Posts: 118
Not perl, just normal grep
  #4 (permalink)  
Old 05-14-2008
era era is offline Forum Advisor  
Herder of Useless Cats (On Sabbatical)
  
 

Join Date: Mar 2008
Location: /there/is/only/bin/sh
Posts: 3,652
grep normally returns the entire matching line anyway.

The regular expression should work with grep as such, if you make a few minor substitutions. \d is a Perlism, replace with [0-9]. {4} is an egrep-ism, although POSIX grep has it in some form, too (maybe with backslashes before the braces); or you can simply put the required number of repetitions.

You will be hard pressed to find a situation where you can get exactly only the required parts out of grep, though. [0-9][0-9][0-9][0-9]/[0-9][0-9]/[0-9][0-9] and [^/]*$ will still work, but the penultimate directory I don't think you can get without passing through sed or some such.
  #5 (permalink)  
Old 05-14-2008
Katkota Katkota is offline
Registered User
  
 

Join Date: Oct 2007
Posts: 118
I did this below to get the last directory in the tree & all i need is a similar ones:

.*/([^/\n\r]*?)$
  #6 (permalink)  
Old 05-14-2008
era era is offline Forum Advisor  
Herder of Useless Cats (On Sabbatical)
  
 

Join Date: Mar 2008
Location: /there/is/only/bin/sh
Posts: 3,652
If including the last directory component as well is acceptable then you can do [^/]*/[^/]*$ to get the last and the penultimate directory (#1 and half #2) and then if you trim #1 and the last slash, you get the real answer for #2.

*? is certainly not a plain old grep regular expression.

What's the point of this exercise?
Closed Thread

Bookmarks

Tags
awk, awk trim, grep or, perl, perl regex, regex, trim, trim awk

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On




All times are GMT -4. The time now is 08:28 AM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios
The UNIX and Linux Forums Content Copyright ©1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant URLs by vBSEO 3.2.0