string replacement using a lookup table


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers string replacement using a lookup table
# 8  
Old 08-19-2010
If the template file (replacement table) has 100 lines, above sed or perl commands will be long to fill the whole web pages.Smilie

Code:
$ cat template.txt
ACICJ ACIDIPHILIUM
ACIF2 ACIDITHIOBACILLUS
ACIF5 ACIDITHIOBACILLUS
ACIC5 ACIDOBACTERIUM
ACIC1 ACIDOTHERMUS
ACIAC ACIDOVORAX

$ cat input.txt
(PARDP_1_PE905,(ACIF5_1_PE2435,ACIF2_1_PE2737)100)80)88;
(ACICJ_2_PE3051,METRJ_9_PE1586)95;
(ACIC5_1_PE2202,ACIBL_1_PE895)96;
(ACIF5_1_PE2306,ACIF2_1_PE2606)100,MAGSM_1_PE17)92,

$ awk 'NR==FNR{a[$1]=$2;next}{ for (i in a) gsub(i,a[i])}1' template.txt input.txt  

(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,

This User Gave Thanks to rdcwayx For This Post:
# 9  
Old 08-20-2010
Maybe it's also safer to include underscore:
Code:
awk 'NR==FNR{a[$1 "_"]=$2 "_";next}{ for (i in a) gsub(i,a[i])}1' template.txt input.txt

Although the 1st and 3rd parts are in different forms: AAAA0 to AA0+
This User Gave Thanks to konsolebox For This Post:
# 10  
Old 08-20-2010
Quote:
Originally Posted by konsolebox
Maybe it's also safer to include underscore
rdcwayx & konsolebox, thank you very much indeed. konsolebox: may I ask what is the safety from considering the underscore? U think otherwise awk may over-replace in some cases?
# 11  
Old 08-20-2010
Yes I just see that probability.
 
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