Sponsored Content
Top Forums Shell Programming and Scripting Perl: Global Search and replace Post 302192267 by epi8 on Tuesday 6th of May 2008 01:41:12 PM
Old 05-06-2008
Tools Perl: Global Search and replace

I have a file where the rows correspond to individuals and the columns are about 106 variables. Each variable is coded as either ACGT, and "missing" is coded as blank. This is a tab delimited file. I'm trying to replace all blanks (" ") with 0. The simple script I have is only replacing some of the blanks. Please help me figure out what's wrong with the script, so that every blank could be replaced by zero. Thanks!!!!

#!/usr/local/bin/perl
print "What file would you like to edit?";
$filename= <STDIN>;
open (TEXT, "$filename") || die "Can't open";
open (OUT, ">gd_53d.out" || die "Can't Open");
$var = " ";
while ($var ne "")
{
$var = <TEXT>;
if ($var eq "\t\t")
{
print OUT "\t\t";
next;
}
$var =~s/\t\t/\t0\t/gi;
print OUT $var;
}
close TEXT;
close OUT;
exit;
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Global search ok...but replace?

Gurus, I have in my /tmp directory 26 files "filea", "fileb"..."filez". Each file contains the name of a database 'dwora' at many, many places within each file. My boss decided to change the name of the db so I need to do (what i'd call) a global search&replace of that string in all my... (0 Replies)
Discussion started by: alan
0 Replies

2. Shell Programming and Scripting

perl search and replace pairs

Hello all im facing some kind of problem i have this string : functionA() $" "$ functionB("arg1") $" = "$ i will like to replace all the pairs of opening and closing "$" to be something like that functionA() <#" "#> functionB("arg1") <#" = "#> i cant of course do is with simple ... (1 Reply)
Discussion started by: umen
1 Replies

3. Shell Programming and Scripting

Perl: Search for string on line then search and replace text

Hi All, I have a file that I need to be able to find a pattern match on a line, search that line for a text pattern, and replace that text. An example of 4 lines in my file is: 1. MatchText_randomNumberOfText moreData ReplaceMe moreData 2. MatchText_randomNumberOfText moreData moreData... (4 Replies)
Discussion started by: Crypto
4 Replies

4. Shell Programming and Scripting

Search and replace in Perl

Hello, I have a Perl script that reads in an Excel spread sheet and formats the values into a text file. I am having trouble with one column that can have numbers or letters. Excel left justifies the values that start with a letter and right justifies the values that contain only a... (2 Replies)
Discussion started by: jyoung
2 Replies

5. Shell Programming and Scripting

Global search and replace across multiple files

Hi all I'm in need of a command which can replace a specified string with another string - across multiple files within multiple sub-directories (I intend to run it from / ) I've used the following to get a list of the files: find . | xargs grep <string1> But that's as far as I've got.... (7 Replies)
Discussion started by: huskie69
7 Replies

6. Shell Programming and Scripting

Search and Replace in Perl

I am trying to write a simple perl script to run on a FreeBSD machine. There are alot of posts here, and I have read so many, yet can not get this script to run. #!/usr/bin/perl -e 's/\r\n/~/' infile.txt outfile.txt I am trying to take a windows text file, move it into Unix, run a script on... (1 Reply)
Discussion started by: mach1
1 Replies

7. Shell Programming and Scripting

Perl - search and replace a particular field

Hi, I have a file having around 30 records. Each record has 5 fields delimited by PIPE. Few records in the file having Junk characters in the field2 and field4. I found the junk charcter and I tested it and replace the junk with space with the command below perl -i -p -e "s/\x00/ /g"... (1 Reply)
Discussion started by: ramkrix
1 Replies

8. Shell Programming and Scripting

Global search and replace multi line file

Hello I need to search for a mult-line strngs(with spaces in between and qoted) in a file1 and replace that text with Fixed string globally in file1. The strng to search for is in file2. The file is big with some 20K records. so speed and effciency is required file1: (where srch & rplc... (0 Replies)
Discussion started by: Hiano
0 Replies

9. Shell Programming and Scripting

Global replace with perl in bash

I am newbie to perl, I am trying to use the below syntax to replace globally a string with a variable. $ bash -version GNU bash, version 2.05b.0(1)-release (powerpc-ibm-aix5.1) Copyright (C) 2002 Free Software Foundation, Inc. $ perl -version This is perl, v5.8.8 built for... (2 Replies)
Discussion started by: jville
2 Replies

10. Shell Programming and Scripting

Search and replace (perl)

How can I achieve this? Perl would be awesome. Input string a_b c //Note there is a blank here Needed Output a_b_c Thanks (4 Replies)
Discussion started by: dragonpoint
4 Replies
lreplace(n)						       Tcl Built-In Commands						       lreplace(n)

__________________________________________________________________________________________________________________________________________________

NAME
lreplace - Replace elements in a list with new elements SYNOPSIS
lreplace list first last ?element element ...? _________________________________________________________________ DESCRIPTION
lreplace returns a new list formed by replacing one or more elements of list with the element arguments. first and last are index values | specifying the first and last elements of the range to replace. The index values first and last are interpreted the same as index values | for the command string index, supporting simple index arithmetic and indices relative to the end of the list. 0 refers to the first ele- | ment of the list, and end refers to the last element of the list. If list is empty, then first and last are ignored. If first is less than zero, it is considered to refer to before the first element of the list. For non-empty lists, the element indicated by first must exist or first must indicate before the start of the list. If last is less than first, then any specified elements will be inserted into the list at the point specified by first with no elements being deleted. The element arguments specify zero or more new arguments to be added to the list in place of those that were deleted. Each element argu- ment will become a separate element of the list. If no element arguments are specified, then the elements between first and last are sim- ply deleted. If list is empty, any element arguments are added to the end of the list. EXAMPLES
Replacing an element of a list with another: % lreplace {a b c d e} 1 1 foo a foo c d e Replacing two elements of a list with three: % lreplace {a b c d e} 1 2 three more elements a three more elements d e Deleting the last element from a list in a variable: % set var {a b c d e} a b c d e % set var [lreplace $var end end] a b c d A procedure to delete a given element from a list: proc lremove {listVariable value} { upvar 1 $listVariable var set idx [lsearch -exact $var $value] set var [lreplace $var $idx $idx] } SEE ALSO
list(n), lappend(n), lindex(n), linsert(n), llength(n), lsearch(n), lset(n), lrange(n), lsort(n), string(n) | KEYWORDS
element, list, replace Tcl 7.4 lreplace(n)
All times are GMT -4. The time now is 11:46 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy