Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re^3: Search & Replace repeating characters

by Marshall (Canon)
on Apr 29, 2020 at 08:38 UTC ( [id://11116190]=note: print w/replies, xml ) Need Help??


in reply to Re^2: Search & Replace repeating characters
in thread Search & Replace repeating characters

Ok. Now I understand this better.
Use the command prompting loop to reject invalid syntax of the input.
Below I reject input lines that have a double // or \\.
use strict; use warnings; my $dir; while ( (print "enter directory; "), $dir=<STDIN> and $dir =~ /\\\\|\/ +\//g) { print "invalid directory syntax... double ", '// or \\\\', " not al +lowed!\n"; } $dir =~ s/^\s*|\s*$//g; #remove leading and trailing spaces print "INPUT LOOP says $dir\n"; __END__ C:\Monks>perl CommandLoopNoDoubleSlash.pl enter directory; C:\\x invalid directory syntax... double // or \\ not allowed! enter directory; D:\x\temp// invalid directory syntax... double // or \\ not allowed! enter directory; C://x invalid directory syntax... double // or \\ not allowed! enter directory; C:/X INPUT LOOP says C:/X
Now it is also possible perhaps have a sub that prompts for a valid directory and that sub continues to loop until a valid directory is entered. I would return a file handle from that sub. In that sort of case, the sub tries to open the dir name that the user entered and it works or it doesn't. Loop until the openddir() works. Remember to allow for leading and trailing whitespace for all command line entries.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11116190]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (2)
As of 2024-04-26 00:37 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found