use strict;
my $str = '[Input]
NewAutoController = New Input:
ControllerDisconnect = The controller has disconnected. Please re-connect the controller to resume.
[levels]
Chapter = Chapter
Act = Act
MountainPeak = Mountain Peak
FreeRoamDesc = Do Whatever You\'d Like
[coop]
SyncBusyWait0 = Waiting for player 1!
SyncBusyWait1 = Waiting for player 2!
[cheats]
disallowed_outside_editor = Not in Editor
[Console]
OfflineMode = Do you want to play offline? Xbox Live features won\'t be available and data will not save.
FailedLogin = Unable to log in at this time. Please wait and try again.
Yes = Yes
No = No';
my $regex = qr/([?\[\]])/mp;
my $subst = '\\\\$1';
my $result = $str =~ s/$regex/$subst/rg;
print "The result of the substitution is' $result\n";
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Perl, please visit: http://perldoc.perl.org/perlre.html