string replacement using a lookup table


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers string replacement using a lookup table
# 1  
Old 08-19-2010
string replacement using a lookup table

Dear all thanks for helping in advance.. Know this should be fairly simple but I failed in searching for an answer.

I have a file (replacement table) containing two columns, e.g.:
Code:
ACICJ ACIDIPHILIUM
ACIF2 ACIDITHIOBACILLUS
ACIF5 ACIDITHIOBACILLUS
ACIC5 ACIDOBACTERIUM
ACIC1 ACIDOTHERMUS
ACIAC ACIDOVORAX

which are tab or space delimited (which can be changed easily)

And need to use this table to replace in another file all occurances of strings from the first column by their counterpart strings. Can this be done easily in bash shell?

Thankx again

Last edited by Franklin52; 08-19-2010 at 03:58 PM.. Reason: Please use code tags
# 2  
Old 08-19-2010
Post an example of the other file and the desired output with the given replacement table.
# 3  
Old 08-19-2010
Quote:
Originally Posted by Franklin52
Post an example of the other file and the desired output with the given replacement table.
Example input and output would be like the attached. The table would be used to identify and replace the strings..
# 4  
Old 08-19-2010
MySQL

Code:
# sed 's/F5\|F2/DITHIOBACILLUS/g;s/CJ/DIPHILIUM/;s/C5/DOBACTERIUM/' infile
(PARDP_1_PE905,(ACIDITHIOBACILLUS_1_PE2435,ACIDITHIOBACILLUS_1_PE2737)100)80)88;
(ACIDIPHILIUM_2_PE3051,METRJ_9_PE1586)95;
(ACIDOBACTERIUM_1_PE2202,ACIBL_1_PE895)96;
(ACIDITHIOBACILLUS_1_PE2306,ACIDITHIOBACILLUS_1_PE2606)100,MAGSM_1_PE17)92,

# 5  
Old 08-19-2010
Quote:
Originally Posted by ygemici
Code:
# sed 's/F5\|F2/DITHIOBACILLUS/g;s/CJ/DIPHILIUM/;s/C5/DOBACTERIUM/' infile
(PARDP_1_PE905,(ACIDITHIOBACILLUS_1_PE2435,ACIDITHIOBACILLUS_1_PE2737)100)80)88;
(ACIDIPHILIUM_2_PE3051,METRJ_9_PE1586)95;
(ACIDOBACTERIUM_1_PE2202,ACIBL_1_PE895)96;
(ACIDITHIOBACILLUS_1_PE2306,ACIDITHIOBACILLUS_1_PE2606)100,MAGSM_1_PE17)92,

I guess this is an ad hoc suggestion, which will not do ( as the replacement table is hundreds and the input file - thousands of lines.
# 6  
Old 08-19-2010
Quote:
Originally Posted by roussine
I guess this is an ad hoc suggestion, which will not do ( as the replacement table is hundreds and the input file - thousands of lines.
i cant know your file how many lines and line lenghths..

you can check this Smilie
sed, a stream editor

if you cant success try this..
Code:
 
# perl -pe 's/F5/DITHIOBACILLUS/g;s/F2/DITHIOBACILLUS/;s/CJ/DIPHILIUM/;s/C5/DOBACTERIUM/' infile

# 7  
Old 08-19-2010
Quote:
Originally Posted by ygemici
i cant know your file how many lines and line lenghths..

you can check this Smilie
sed, a stream editor

if you cant success try this..
Code:
 
# perl -pe 's/F5/DITHIOBACILLUS/g;s/F2/DITHIOBACILLUS/;s/CJ/DIPHILIUM/;s/C5/DOBACTERIUM/' infile

sed is a powerful thing, i have this page in bookmarks Smilie, thanks
But still my lines to replace are many more..
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Korn shell - lookup table

Hi All I need to pass country code into a pipe delimited file for lookup. It will search country code (column 3) in the file, if the country code matched, it will return value from other columns. Here is my mapping file. #CountryName|CountryRegion|CountryCode-3|CountryCode-2... (5 Replies)
Discussion started by: lafrance
5 Replies

2. Shell Programming and Scripting

Filtering duplicates based on lookup table and rules

please help solving the following. I have access to redhat linux cluster having 32gigs of ram. I have duplicate ids for variable names, in the file 1,2 are duplicates;3,4 and 5 are duplicates;6 and 7 are duplicates. My objective is to use only the first occurrence of these duplicates. Lookup... (4 Replies)
Discussion started by: ritakadm
4 Replies

3. Shell Programming and Scripting

Sed variable from lookup table

I have a file with the following format --TABLEA_START-- field1=data1;field2=data2;field3=data3 --TABLEA_END-- --TABLEB_START-- field1=data1;field2=data2;field3=data3 --TABLEB_END-- --TABLEA_START-- field1=data1;field2=data2;field3=data3 ... (0 Replies)
Discussion started by: milo7
0 Replies

4. Programming

64-bit CRC Transition To Bytewise Lookup-Table

Good Evening, I started working on the 17x17 4-colouring challenge, and I ran into a bit of an I/O snag. It was an enormous headache to detect the differences in very similar 289-char strings. Eventually, it made more sense to associate a CRC-Digest with each colouring. After learning... (0 Replies)
Discussion started by: HeavyJ
0 Replies

5. Shell Programming and Scripting

Search, replace string in file1 with string from (lookup table) file2?

Hello: I have another question. Please consider the following two sample, tab-delimited files: File_1: Abf1 YKL112w Abf1 YAL054c Abf1 YGL234w Ace2 YKL150w Ace2 YNL328c Cup9 YDR441c Cup9 YDR442w Cup9 YEL040w ... File 2: ... ABF1 YKL112W ACE2 YLR131C (9 Replies)
Discussion started by: gstuart
9 Replies

6. Shell Programming and Scripting

String replacement

Hi I am new to shell scripting but i manage to do some simple things. I am trying to replace a string in one file. I am using sed to replace but it is not permanently writing to the file, rather it is temporary. I want to know whether is there any another method to replace a string in a file... (7 Replies)
Discussion started by: reddybs
7 Replies

7. Shell Programming and Scripting

Lookup the matching string

Dear all, I have two files like below. file1 ====== x y ==== === 123 test1 124 test2 125 test3 file2 ======= a b c === === ==== 123 ... (2 Replies)
Discussion started by: Nayanajith
2 Replies

8. UNIX for Dummies Questions & Answers

HELP with using a lookup table

Using AIX 5.2, Bourne and Korn Shell. I have two flat text files. One is a main file and one is a lookup table that contains a number of letter codes and membership numbers as follows: 316707965EGM01 315672908ANM92 Whenever one of these records from the lookup appears in the main file... (6 Replies)
Discussion started by: Dolph
6 Replies

9. Shell Programming and Scripting

lookup table in perl??

hi, i am very much new in perl and have this very basic question in the same:( the requirement is as below: i have an input file (txt file) in which i have fields invoice number and customer number. Now i have to take input this combination of invoice n customer number and check in a... (2 Replies)
Discussion started by: Bhups
2 Replies

10. Shell Programming and Scripting

sed problem - replacement string should be same length as matching string.

Hi guys, I hope you can help me with my problem. I have a text file that contains lines like this: 78 ANGELO -809.05 79 ANGELO2 -5,000.06 I need to find all occurences of amounts that are negative and replace them with x's 78 ANGELO xxxxxxx 79... (4 Replies)
Discussion started by: amangeles
4 Replies
Login or Register to Ask a Question