in reply to Re: text has single and double quotes and anychar. how to assign this text?
in thread text has single and double quotes and anychar. how to assign this text?

Thank you, Athanasius.
In my case I read line, which has words and some other chars.
# ... $input = <>; # string which can contain any chars $input =~ s/\b(?=\w)/\$/g; # words prepend with dollar sign print $some_file <<"END"; my \$var = "$input"; END
I want $some_file to become syntactically correct. I don't know in which place will be variables and which characters will the line contain. And one more problem: if input is "aaa{a}", I prepend "$" sign before 'aaa' and before 'a', I want to have two variables '$aaa' and '$a', but here I will have an interpolation of hash value :/.
(updated)
  • Comment on Re^2: text has single and double quotes and anychar. how to assign this text?
  • Download Code

Replies are listed 'Best First'.
Re^3: text has single and double quotes and anychar. how to assign this text?
by Athanasius (Archbishop) on Aug 20, 2015 at 16:28 UTC

    Hello rsFalse,

    I want $some_file to become syntactically correct.

    Do you mean you want to turn a text file into syntactically correct Perl? If so, this sounds like a recipe for disaster. Are you going to eval "$some_file"; after prepending a $ sigil to each word? If the file comes from an untrustworthy source, it could destroy your system. And if from a trusted source, why the need to re-write it? And how do you know in advance that a variable should be prepended with a $, and not an @ or a %?

    This is beginning to look like an XY Problem. Might be a better idea to explain what you’re trying to achieve. It’s likely the monks will be able to steer you towards a better strategy.

    Hope that helps,

    Athanasius <°(((><contra mundum Iustus alius egestas vitae, eros Piratica,