Extract single or multi word string in Cshell


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Extract single or multi word string in Cshell
# 1  
Old 02-11-2009
Extract single or multi word string in Cshell

I am using the following code:

set LASInputFile = `ls *.[Ll][Aa][Ss] | head -1`
set COMPLine = `grep -i :COMPANY $LASInputFile`


to extract the following line from my input file:


COMP. XYZ Public Company :COMPANY NAME


I now need to extract the full name of the company which may be a single word or multiple words separated by white space as in this example. I study awk and sed but I just can't figure out how to code for this.

Thanks,

Paul H.
Denver
# 2  
Old 02-11-2009
Code:
echo 'COMP. XYZ Public Company :COMPANY NAME' | sed 's/.*:\(.*\)/\1/'
echo 'COMP. XYZ Public Company :COMPANY NAME' | awk -F: '{print $NF}'

# 3  
Old 02-11-2009
Thanks for the help. In both cases, the code extracted the string: "COMPANY NAME". What I'm hoping to get is (in my example) "XYZ Public Company", or whatever (delimited or non-delimited) string appears between "COMP." and ":COMPANY NAME".

Thanks,

Paul H.
# 4  
Old 02-11-2009
Code:
echo 'COMP. XYZ Public Company :COMPANY NAME' | sed 's/^[^ ][^ ]* *\([^:][^:]*\)[ ][ ]*:.*/\1/'


Last edited by vgersh99; 02-11-2009 at 02:49 PM.. Reason: rid of the trailing spaces
# 5  
Old 02-11-2009
This won't work?
Code:
awk -F: '{print $1}' file_with_list | awk -F. '{print $2}'

# 6  
Old 02-11-2009
Another one with sed:

Code:
sed 's/COMP\. \(.*\) :COMPANY NAME/\1/'

Regards
# 7  
Old 02-11-2009
Quote:
Originally Posted by avronius
This won't work?
Code:
awk -F: '{print $1}' file_with_list | awk -F. '{print $2}'


Why two calls to awk?

Code:
awk -F: '{ split($1,a,"."); print a[2] }' file_with_list

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Help with reformat single-line multi-fasta into multi-line multi-fasta

Input File: >Seq1 ASDADAFASFASFADGSDGFSDFSDFSDFSDFSDFSDFSDFSDFSDFSDFSD >Seq2 SDASDAQEQWEQeqAdfaasd >Seq3 ASDSALGHIUDFJANCAGPATHLACJHPAUTYNJKG ...... Desired Output File >Seq1 ASDADAFASF ASFADGSDGF SDFSDFSDFS DFSDFSDFSD FSDFSDFSDF SD >Seq2 (4 Replies)
Discussion started by: patrick87
4 Replies

2. Shell Programming and Scripting

Command to extract word from a string

Hi All, I have a word and from that word would like to search for certain set of string, is there any command to do so ? EX : Components from the above word, would like to search for strings set and extract the search string and then do if stmt... pon nen ent Com say... (2 Replies)
Discussion started by: Optimus81
2 Replies

3. Shell Programming and Scripting

Extract First and matching word from string in UNIX

Thank you (2 Replies)
Discussion started by: Pratik Majithia
2 Replies

4. Shell Programming and Scripting

how to extract last word and a number from a string

I have the following script (which I made by my self) #!/bin/bash # add a few empty lines to make it more legible # add a date description on each update interval echo "" >> /home/user/DYN_DNS_IP_change.log echo "" >> /home/user/DYN_DNS_IP_change.log echo "" >>... (6 Replies)
Discussion started by: mahirzukic2
6 Replies

5. Shell Programming and Scripting

Using SED to extract a word or string.

I am working with the ksh shell in HP UNIX and I am attempting to extract a word, beginning with a particular string and ending at the first space. for example I want to extract the word or string MS_RECENT_ACTIVITY from the following string " This has been entered in MS_RECENT_ACTIVITY the... (2 Replies)
Discussion started by: simpletech369
2 Replies

6. Shell Programming and Scripting

Multi lines to single line

HI, My input file contains the data as like below: A1234119993 B6271113 Bghjkjk A1234119992 B6271113hi Bghjkjkmkl the output i require is : A1234119993 B6271113 Bghjkjk A1234119992 B6271113hi Bghjkjkmkl Please help me in this. Thanks (6 Replies)
Discussion started by: pandeesh
6 Replies

7. Shell Programming and Scripting

extract whole thing in word, leaving behind last word. - perl

Hi, i've a string /u/user/DTE/T_LOGS/20110622_011532_TEST_11_HD_120/HD/TESi T_11_HD_120/hd-12 i need to get string, like /u/user/DTE/T_LOGS/20110622_011532_TEST_11_HD_120/HD the words from HD should get deleted, i need only a string till HD, i dont want to use any built in... (4 Replies)
Discussion started by: asak
4 Replies

8. Shell Programming and Scripting

Multi line document to single lines based on occurance of string

Hi Guys, I am new to awk and sed, i am working multiline document, i want to make make that document into SINGLE lines based on occurace of string "dwh". here's the sample of my problem.. dwh123 2563 4562 4236 1236 78956 12394 4552 dwh192 2656 46536 231326 65652 6565 23262 16625623... (5 Replies)
Discussion started by: victor369
5 Replies

9. Shell Programming and Scripting

Extract single word from lines

Hi I have a huge line like the following: this word and many other words AA122134 other and other words and AA224466 and other other other other word AA667210 words I only want extract the words AA?????? and put them in a column, how could i do ? thx so much! (7 Replies)
Discussion started by: AdminLew
7 Replies

10. Shell Programming and Scripting

perl newbie: how to extract an unknown word from a string

hi, im quite new to perl regexp. i have a problem where i want to extract a word from a given string. but the word is unknown, only fact is that it appears as the second word in the string. Eg. input string(s) : char var1 = 'A'; int var2 = 10; char *ptr; and what i want to do is... (3 Replies)
Discussion started by: wolwy_pete
3 Replies
Login or Register to Ask a Question