Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I need a tool that can open a text file and replace characters in a list with other characters in a list.

For example:

Lets say I have a list of "aA", "aB", and want to replace "aA" with "AA".

What is a software program that could do this easily?

share|improve this question
Virtually any scripting language can handle this easily: AutoIt, Python, Perl, etc. – MaQleod Aug 21 '11 at 19:02
I tried this with python but the logic has not been working properly so now I need a tool. – nobody Aug 21 '11 at 19:06
Try notepad++, you can do batch string replacement over many files:…, or you can post your Python code and have a mod move this over to and they will help you out there. – MaQleod Aug 21 '11 at 19:07

This is exactly what the sed program was made for.

share|improve this answer
well, if he means change lowercase chars to uppercase, then perhaps not so easy with sed. if he means just changing some specifics, like aA to AA, then yes. – barlop Aug 21 '11 at 19:25
Or ex. Or indeed tr if using sed to change case is seen as hard (which, with GNU sed at least, it really isn't). – JdeBP Aug 24 '11 at 0:00

As a Perl one-liner, to replicate sed functionality...

perl -pe " s/aA/AA/g; s/aB/AB/g; " < input.txt > output.txt

This will turn this input.txt...

aA, aA, aA, aA, aA
aB, aB, aB, aB, aB

into this output.txt...


It does this through regular expression substitution...

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .