Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- sub convert_string {
- #converts strings with variables inside to python format
- local ($line) = @_;
- if ($line =~ /[^\\]\"(.*[^\\])"/){
- $insideString = $1;
- if ($insideString =~ /\$/){
- #split by dollar sign
- @array = split ('\$', $insideString);
- @useful = ();
- foreach $elem (@array){
- # if ($elem !~ /^\s*$/){
- push (@useful, $elem);
- # }
- }
- @finalsplit = ();
- #first part doesnt have $ as split
- $first_part = shift @useful;
- $first_part =~ s/\s*$//;
- push (@finalsplit, $first_part);
- foreach $elem (@useful){
- #add dollar sign to start of each elem
- $elem = '$'.$elem;
- push (@finalsplit, split (' ', $elem));
- }
- @variablestack = ();
- @returnStack = ();
- foreach $elem (@finalsplit){
- if ($elem =~ /\$/){
- $elem =~ s/\$//;
- push (@variablestack, $elem);
- push (@returnStack, '{}');
- } else {
- push (@returnStack, $elem);
- }
- }
- $source = '';
- foreach $elem (@variablestack){
- $source .= "$elem, ";
- }
- $source =~ s/,\s$//;
- $string = join(' ', @returnStack);
- $string =~ s/^\s*//;
- $string =~ s/\\n//g;
- $line = "'$string'.format($source)";
- }
- }
- return $line;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement