Combining regular expressions can be done by using alternation and parentheses, see perlre. But note that once you have a combined regular expression, both matches will always be tried. The better approach is to have a list of devices and the prompts to use with them. Even better is to configure all devices to have an identical prompt.
I suggest that you create a list of prompt strings to be matched and other strings not to be matched and then write a regular expression (and surrounding program) that will check whether your expression actually matches the prompts and nothing else.
Combining two regular expressions %|#|>|\\$ and [\$%#>] $ is done by wrapping each regular expression in parentheses (...) and joining these with |:
((%|#|>|\\$)|([\$%#>] $))
This expression can be simplified a bit but that should "work".
In reply to Re: Double prompt in Net::Telnet
by Corion
in thread Double prompt in Net::Telnet
by vasanth.easyrider
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |