का उपयोग कर स्ट्रिंग में डॉलर चिह्न ($) से बचने के लिए कैसे मैं perl regex का उपयोग करके दिए गए स्ट्रिंग में कई विशेष वर्णों से बचने की कोशिश कर रहा हूं। यह डॉलर के संकेत को छोड़कर सभी पात्रों के लिए ठीक काम करता है। मैंने कोशिश की है:perl regex
my %special_characters;
$special_characters{"_"} = "\\_";
$special_characters{"$"} = "\\$";
$special_characters{"{"} = "\\{";
$special_characters{"}"} = "\\}";
$special_characters{"#"} = "\\#";
$special_characters{"%"} = "\\%";
$special_characters{"&"} = "\\&";
my $string = '$foobar';
foreach my $char (keys %special_characters) {
$string =~ s/$char/$special_characters{$char}/g;
}
print $string;
बेहतर दृष्टिकोण: 'quotemeta()' या 's/\ Q $ char \ E/... का उपयोग करें, आपको याद रखना चाहिए कि प्रत्येक $ चर के लिए ऐसा करना चाहिए, क्योंकि regexps उन्हें अलग करता है। – hhaamu