1

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?

3
  • Virtually any scripting language can handle this easily: AutoIt, Python, Perl, etc.
    – MaQleod
    Aug 21, 2011 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, 2011 at 19:06
  • Try notepad++, you can do batch string replacement over many files: makeuseof.com/tag/…, or you can post your Python code and have a mod move this over to StackOverflow.com and they will help you out there.
    – MaQleod
    Aug 21, 2011 at 19:07

2 Answers 2

4

This is exactly what the sed program was made for.

2
  • 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, 2011 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, 2011 at 0:00
1

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...

AA, AA, AA, AA, AA
AB, AB, AB, AB, AB

It does this through regular expression substitution...

s(ubstitute)/this-original-string/with-this-new-string/g(lobally)

You must log in to answer this question.

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