background preloader

Perl Regular Expressions

Perl Regular Expressions
Troubleshooters.Com and Code Corner Present Copyright (C) 1998-2001 by Steve Litt Without regular expressions, Perl would be a fast development environment. Probably a little faster than VB for console apps. With the addition of regular expressions, Perl exceeds other RAD environments five to twenty-fold in the hands of an experienced practitioner, on console apps whose problem domains include parsing (and that's a heck of a lot of them). Regular expressions is a HUGE area of knowledge, bordering on an art. Regular expressions are a syntax, implemented in Perl and certain other environments, making it not only possible but easy to do some of the following: Complex string comparisons $string =~ m/sought_text/; # m before the first slash is the "match" operator. Simple String Comparisons The most basic string comparison is $string =~ m/sought_text/; The above returns true if string $string contains substring "sought_text", false otherwise. $string =~ m/^sought_text/; . Now for some examples: Related:  Perl

SpamAssassin: Welcome to SpamAssassin Datei Ein/Ausgabe Verzeichnis open read write STDOUT STDIN print sysopen sysread syswrite 13.1. Datei Ein/Ausgabe Was bringt einem die beste Programmiersprache, wenn man keine Daten Speichern oder wieder Laden kann. Bevor Sie nun aus einer Datei lesen oder schreiben, müssen Sie diese erst mal öffnen. open(HANDLE, "modus $DATEINAME"); Hiermit öffnen Sie eine Datei Namens $DATEINAME mit dem Modus modus. open(HANDLE, "datei"); Datei zum Lesen öffnen open(HANDLE, "< datei"); Datei zum Lesen öffnen, existiert diese nicht scheitert die Funkion open(HANDLE, "+< datei"); Datei zum Lesen und Schreiben öffnen open(HANDLE, "> datei"); Datei zum Schreiben öffnen, falls nicht vorhanden wird diese erzeugt open(HANDLE, ">> datei"); Datei öffnen zum Anhängen, falls nicht vorhanden wird diese erzeugt Sollte das öffnen einer Datei fehlschlagen, müssen Sie nicht wie in anderen Programmiersprachen den Rückgabewert der Funktion überprüfen sondern lediglich eine or-Verknüpfung mit der Funktion 'die' machen ... open(HANDLE, "< $file") or die "\nKonnte Datei $file nicht zum Lesen öffnen\n"; #! #! #! #!

Perl Hash Howto This how-to comes with no guaratees other than the fact that these code segments were copy/pasted from code that I wrote and ran successfully. Initialize a hash Assigning an empty list is the fastest way. Solution my %hash = (); Initialize a hash reference For a hash reference (aka hash_ref or href), assign a reference to an empty hash. my $hash_ref = {}; # ref will return HASH The great thing about this is that if before performing an actual assignment, you want to determine (using the ref operator) the type of thingy that a reference is pointing to, you can!... Note If you treat the variable just as any scalar variable; and use the my declaration alone, or assign a value, ref will return the empty string. my $hash_ref; # not a hash ref!... Clear (or empty) a hash If you literally want to empty the contents of a hash: for (keys %hash) { delete $hash{$_}; } Clear (or empty) a hash reference for (keys %$href) { delete $href->{$_}; } Example #! Output Add a key/value pair to a hash Hash: Hash reference: Hi!

How to Read and Write Files in Perl - Tutorial on Reading and Writing Files in Perl Next: Writing to a file in Perl Perl is an ideal language for working with files. It has the basic capability of any shell script, and some very advanced tools, like regular expressions, that make it infinitely more useful. #! In order to work with this example, you'll need a file for our Perl script to read. Larry Curly Moe When you run the script, the output should be the same as the file itself. open (MYFILE, 'data.txt'); Then we use a simple while loop to automatically read each line of the data file one at a time - this places the value of each line in the temporary variable $_ for one loop. while (<MYFILE>) { Inside the loop, we use the chomp function to clear off the newlines from the end of each line, then we print the value of $_ to show that it was read. chomp; print "$_\n"; Finally we close the filehandle to finish out the program. close (MYFILE);

Procmail Homepage Arrays Arrays are a special type of variable that store list style data types. Each object of the list is termed an element and elements can either be a string, a number, or any type of scalar data including another variable. Place an array into a PERL script, using the at symbol (@). #! Check the syntax here. Each element of the array can be indexed using a scalar version of the same array. #! Quarter Dime Nickel Quarter Dime Nickel Elements can also be indexed backwards using negative integers instead of positive numbers. #! Quarter Dime Nickel Quarter Nickel Dime Quotations can be a hassle, especially if the array you wish to build has more than 5 elements. PERL Code: #! Display: Quarter Dime Nickel PERL offers a shortcut for sequential numbers and letters. #! Retrieving a numerical value that represents the length of an array is a two step process. There are two ways to set an array to scalar mode. #! #!

cURL - Tutorial cURL Docs Tutorial HTTP Scripting 1.1 Background1.2 The HTTP Protocol1.3 See the Protocol1.4 See the Timing1.5 See the Response 2.1 Spec2.2 Host2.3 Port number2.4 User name and password2.5 Path part Fetch a page HTML forms 4.1 Forms explained4.2 GET4.3 POST4.4 File Upload POST4.5 Hidden Fields4.6 Figure Out What A POST Looks Like HTTP upload HTTP Authentication 6.1 Basic Authentication6.2 Other Authentication6.3 Proxy Authentication6.4 Hiding credentials More HTTP Headers 7.1 Referer7.2 User Agent Redirects 8.1 Location header8.2 Other redirects Cookies 9.1 Cookie Basics9.2 Cookie options 10.1 HTTPS is HTTP secure10.2 Certificates Custom Request Elements 11.1 Modify method and headers11.2 More on changed methods Web Login 12.1 Some login tricks Debug 13.1 Some debug tricks References 14.1 Standards14.2 Sites 1. 1.1 Background This document assumes that you're familiar with HTML and general networking. Curl is not written to do everything for you. 1.2 The HTTP Protocol The client, curl, sends a HTTP request. or 3.

Perl globbing tutorial - Reading a directory in perl, learn how to get a directory list. It's very simple to print a list of all files in a directory using the built-in Perl glob function. Let's look over a short script that globs and prints a list of all files, in the directory containing the script itself: #!/usr/bin/perl -w @files = <*>; foreach $file (@files) { print $file . When you run the program, you'll see it output the filenames of all files in the directory, one per line. @files = <*>; Then we simply use a foreach loop to print out the files in the array. You can include any path in your filesystem between the <> marks. @files = </var/www/htdocs/*>; Or if you just want a list of the files with the extension .html: @files = </var/www/htdocs/*.html>;

Python Programming Language – Official Website CGI Programming 101: Chapter 1: Getting Started Our programming language of choice for this book is Perl. Perl is a simple, easy to learn language, yet powerful enough to accomplish very difficult and complex tasks. It is widely available, and is probably already installed on your Unix server. You don't need to compile your Perl programs; you simply write your code, save the file, and run it (or have the web server run it). You can write and edit your CGI programs (which are often called scripts) either on your local machine or in the Unix shell. You can also use a text editor on your local machine and upload the finished programs to the web server. If you use a text editor, be sure to turn off special characters such as "smartquotes." Once you've written your program, you'll need to upload it to the web server (unless you're using pico and writing it on the server already). It is imperative that you upload your CGI programs as plain text (ASCII) files, and not binary. chmod 755 filename What Is This Unix Shell? #! #! #! #! #! #! Resources

How to wait for a certain period of time in Perl on Linux The Universal Operating System Rosetta Code sprintf Perl does its own sprintf formatting: it emulates the C function sprintf(3), but doesn't use it except for floating-point numbers, and even then only standard modifiers are allowed. Non-standard extensions in your local sprintf(3) are therefore unavailable from Perl. Unlike printf , sprintf does not do what you probably mean when you pass it an array as your first argument. The array is given scalar context, and instead of using the 0th element of the array as the format, Perl will use the count of elements in the array as the format, which is almost never useful. Finally, for backward (and we do mean "backward") compatibility, Perl permits these unnecessary but widely-supported conversions: Note that the number of exponent digits in the scientific notation produced by %e , %E , %g and %G for numbers with the modulus of the exponent less than 100 is system-dependent: it may be three or less (zero-padded as necessary). An explicit format parameter index, such as 2$ . one or more of: So: