eBusiness Help
Affordable Web Conferencing
Sign up for a free trial or request a free quote today
Write 10,000 lines of code in 10 minutes!
Iron Speed Designer – Free Evaluation
Enhance and Expand the Capabilities of Outlook
Take Control of Outlook With Professional Add-In Solutions

WebProWorld Dev Forum

New URL same Same Host and IP...What Now?
We've just got a new domain and would like to change our websites current domain to the new one but we're going to be using the same hosting so our IP address will stay the same...

Search Engines and Awstats?
How does this program (and others) pick up what search terms your site was found by and how accurate is it? I recived about 300 hits from searches engines...

Visual Web Developer tutorial
An old programmer friend of mine who I havenīt been in touch with for years, adviced me that I should download visual web developer 2005 express edition to build my site in. He also invited me come over and teach me some...



Recent Articles

Beyond Web Usability: Web Credibility
Web usability: It's old news. If you've been developing websites on Mars for the past few years then you'll be forgiven for not knowing about web usability...

Usability Doesn't Have to Be Ugly

There is a balance that needs to be struck between a website that is truly functional and one that is elegant and stylish. In an ideal world, the function...

Understanding SQL Web Hosting
Before understanding the concept of SQL web hosting, it's necessary to have a basic grasp on what SQL is, and also how web hosting works. SQL is the acronym for Structured...

Fundamentals of Web Site Acceleration
This paper outlines a common sense, cost-effective approach to lowering total cost of ownership and improving Web site and Web application performance according to two simple principles...

Make a search engine for your website with PHP
This hands on PHP Programming article provides the knowledge necessary to design and develop a search engine for your website using PHP...

The Power of Web Forms
Web forms allow site owners to gather information about their site visitors. Web forms can be as simple as an email newsletter subscription box, or as complex as
an...



01.18.06


Perl: Cryptic Power

By Lee Asher

Perl is, let's face it, a programming language for people who know programming.

It's extremely different from PHP: you can't really just pick it up and use it. Perl bears a lot of resemblance to C and Unix shell scripts, if that means anything to you - if it doesn't, you should probably steer clear of Perl. If you're a reasonably experienced programmer who knows C and you're looking to move onto the web, though, Perl will be a great fit for you.

Perl's Values

To understand Perl, you have to understand why it is the way it is. There are two phrases that sum up the Perl philosophy: the first is "there's more than one way to do it", and the second is "easy things should be easy, and hard things should be possible". It's disputable whether Perl makes easy things easy, but hard things are certainly possible, and there's more than one way to do them. If that's the kind of language you're after, Perl is for you.


Turn Key Reseller Web Hosting - Host UNLIMITED sites!


Perl is a free language, and is closely tied to the wider open source movement. This means that you will be able to find the source code to lots of useful scripts that have already been written, and take them apart to see how they work. Unfortunately, though, you might find that easier said that done - trying to understand Perl scripts written by other people can be very, very difficult, and that's one of the biggest criticisms of the language.

Why Use Perl?

Perl's strength, though, (as well as its most difficult element) is that most things you'll do with the language will be done using regular expressions (known as regexps for short). This is what gives Perl its powerful abilities to manipulate text, and make it good for complicated web pages.

The trouble with regexps, though, is that they look like complete nonsense to the uninitiated. All the unusual characters on the keyboard have different meanings, like this:

| - Or. For example, me|you matches 'me' or 'you'.

? - Any one character (or no character), so per? matches 'perl', 'perk' or 'per', but not 'perks'.

* - Any number of characters.

( ) - Separate one lot of syntax from another. For example, you could write h(e|a)??o to match both 'hello' and 'halo'.

[ ] - Matches specific characters and ranges of characters. For example, [a-z] means any lowercase letter from a to z, but no capital letters.

There are many, many more: Wikipedia has a good reference at http://en.wikipedia.org/wiki/Regular_expression.

Once you understand them, regexps let you do complicated things to text. One good example use is taking text that isn't HTML, and writing a set of rules to turn it into HTML intelligently. Regexps can also be used to validate data, such as this one that matches a valid email address:

[A-Za-z0-9]+@[A-Za-z0-9]+\.[A-Za-z]{2,4}

Can you see why people say they're complicated? This one means says that an email address must consist of any number of
characters between A to Z or 0 to 9, followed by an @, then the same again, followed by a dot, and then 2-4 characters that must be between A and Z, but not a number. Confused? I was writing it. Most people writing regexps write ones that aren't perfect, and need to be improved before they will work every time. If you can practice and master them, though, they give you a lot of power.

Doesn't PHP Have Regexps?

Well, yes, it does now - they were added by people who wanted to make PHP as useful as Perl is. However, PHP's regexps aren't integrated with the language in the same way as Perl's are.

What Else Can Perl Do?

Perl has all the standard features of object-oriented programming languages: classes, functions, variables, and the rest. One area where Perl is unusual, though, is that it has a very large library of user-contributed functions that can be installed as 'modules'. These modules can be downloaded from CPAN (the Comprehensive Perl Archive Network) at www.cpan.org. Whatever it is you want to do, the chances are you'll find a choice of modules there that can do it - there are hundreds of modules for HTML alone, if you take some time to explore.

About the Author:
Information supplied and written by Lee Asher of Eclipse Domain Services

Domain Names, Hosting, Traffic and Email Solutions.

About TheDevWeb
TheDevWeb examines the best tools and techniques to help you keep up with all the latest trends in the fast paced world of web development. Excellence in Development Starts Here

TheDevWeb is brought to you by:

SecurityConfig.com NetworkingFiles.com
NetworkNewz.com WebProASP.com
DatabaseProNews.com SQLProNews.com
ITcertificationNews.com SysAdminNews.com
LinuxProNews.com WirelessProNews.com
CProgrammingTrends.com ITmanagementNews.com



-- TheDevWeb is an iEntry, Inc. publication --
iEntry, Inc. 2549 Richmond Rd. Lexington KY, 40509
2006 iEntry, Inc. All Rights Reserved Privacy Policy Legal

archives | advertising info | news headlines | free newsletters | comments/feedback | submit article


Excellence in Development Starts Here TheDevWeb News Archives About Us Feedback TheDevWeb Home Page About Article Archive News Downloads WebProWorld Forums Jayde iEntry Advertise Contact