Training, Open Source computer languages
PerlPHPPythonMySQLApache / TomcatTclRubyJavaC and C++LinuxCSS 
Search for:
Home Accessibility Courses Diary The Mouth Forum Resources Site Map About Us Contact
 
20.9.2014 - We have just updated our course layouts and descriptions and added our 2015 schedule.

Regular expression

Posted by kannarv1 (kannarv1), 4 October 2006
HI iam not sure whats the problem
with this regular expression.Iam trying to match  $fPrompt which is
sftp. what does this reg exp mean it does not seem to match  
-re "\n2.. .*$fPrompt"

but i can match it by "*fprompt" and not by regular expression .

expect {
               -re "\n2.. \[^\r]*\r\n$fPrompt"  {
                       dbg 0 "Established sftp session "
               }
               -re "\n2.. .*$fPrompt"  {
                       dbg 0 "Established sftp session "
               }
               -re "\n... \[^\r]*\r\n$fPrompt"  {
                       send -- "exit\r"
                       errLog "Login failed (invalid login ) ... "
                       exit -1
               }
               timeout {
                       send -- "exit\r"
                       errLog "Failed to establish ftp session ... "
                       exit -1
               }
       }


thanks




Posted by admin (Graham Ellis), 4 October 2006
I'm not sure if I completely understand the question, but I think you're trying to match a literal $ character but it's being taken as the first character of a variable name.   You need to \ protect i.

Posted by kannarv1 (kannarv1), 5 October 2006
Thanks graham for the reply iam trying to match ftp prompt in my program i have already defined
set $fPrompt "ftp>"

iam trying to match ftp prompt thru regular expression . i can match it by saying

"*ftp"{  
   dbg 0 "Established sftp session "  
     }  

i think these two regular expression should match the ftp prompt but some how it doesnot .not sure whats the problem if i specify"\n2..

-re "\n2.. \[^\r]*\r\n$fPrompt"

-re "\n2.. .*$fPrompt"



Posted by admin (Graham Ellis), 5 October 2006
In Tcl, you only use the $ in front of a variable when you're using it and NOT when you're setting in.   So
set $fPrompt "ftp>"
should read
set fPrompt "ftp>"

I don't know if that's your only (remaining) problem, but it won't help!



This page is a thread posted to the opentalk forum at www.opentalk.org.uk and archived here for reference. To jump to the archive index please follow this link.

You can Add a comment or ranking to this page

© WELL HOUSE CONSULTANTS LTD., 2014: Well House Manor • 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • FAX: 01144 1225 899360 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho