Web Developer's Virtual Library: Encyclopedia of Web Design Tutorials, Articles and Discussions


WDVL Newsletter

Active Server Pages
JSP/Java Servlets
Microsoft SQL Server
Daily Backup
Dedicated Servers
Streaming Audio/Video
24-hour Support    

jobs.webdeveloper.com

Hiermenus


e-commerce
Partner With Us















Developer Channel
FlashKit.com
JavaScript.com
JavaScriptSource
Developer Jobs
ScriptSearch
StreamingMediaWorld
Web Developer's Journal
Web Developer's Virtual Library
WebDeveloper.com
Webreference
Web Hosts
XMLfiles.com

internet.com
IT
Developer
Internet News
Small Business
Personal Technology

Search internet.com
Advertise
Corporate Info
Newsletters
Tech Jobs
E-mail Offers


Equality operators

Equality operators

  • One of the most important string manipulation functions is that of matching or testing of equality. It is an important tool because you can use it as the basis of complex logical comparisons necessary for the intelligence demanded of a CGI application.

  • For example, many CGI applications use one of the most basic methods of pattern matching, the "ne" operator, as the basis of their decision making process using the following logic:

    if (the user has hit a specific submit button) 
         { 
         execute a specific routine. 
         } 
    

  • Consider this code snippet:

    if ($display_frontpage_submit_button ne "")
           {
           &display_frontpage;
           }
    

If you are confused about the usage of the "if" test, it is explained in greater detail in the "Control Structures" section later.

  • The "ne" operator asks if the value of the variable $display_frontpage_submit_button is not equal to an empty string. This logic takes advantage of the fact that the HTTP protocol specifies that if a FORM submit button is pressed, its NAME is set equal to the VALUE specified in the HTML code. For example, the submit button may have been coded using the following HTML:

    <INPUT TYPE = "submit"
           NAME = "display_frontpage_submit_button"
           VALUE= "Return to the Frontpage"
           >
    

  • Thus, if the NAME in the associative array has a VALUE, the script knows that the client pushed the associated button. The script determines which routines it should execute by following the logic of these pattern matches.

  • Similarly, you can test for equality using the "eq" operator. An example of the "eq" operator in use is shown below:

    if ($name eq "Selena")
           {
           print "Hi, Selena\n";
           }
    

  • When comparing numbers instead of strings however, Perl uses a second set of operators. For example, to test for equality, you use the double equal (==) operator as follows:

    if ($number == 11)
           {
           print "You typed in 11\n";
           }
    

Warning: Never use the single equal sign (=) for comparison. Perl interprets the equal sign in terms of assignment rather than comparison. Thus the line:

$number = 11;

actually assigns the value of eleven to $number rather than comparing $number to eleven.

  • There are many other types of comparison operators, but they are better researched in more comprehensive texts. However, we do include several important ones in the following table

Numeric Op. String Op Description
== eq Equal
!= ne Not equal
< lt Less than
> gt Greater than
<= le Less than or equal to
>= ge Greater than or equal to

Additional Resources:

Manipulating Strings in Perl
Table of Contents
Regular Expressions


Up to => Home / Authoring / Scripting / Tutorial




Jupiter Online Media: internet.comearthweb.comDevx.commediabistro.comGraphics.com

Search:

Jupitermedia Corporation has two divisions: Jupiterimages and Jupiter Online Media

Jupitermedia Corporate Info


Legal Notices, Licensing, & Permissions, Privacy Policy.

Web Hosting | Newsletters | Tech Jobs | Shopping | E-mail Offers