Lecture 18 Regular Expressions
|
|
|
- Gilbert Preston
- 9 years ago
- Views:
Transcription
1 Lecture 18 Regular Expressions Many of today s web applications require matching patterns in a text document to look for specific information. A good example is parsing a html file to extract <img> tags of a web document. If the image locations are available, then we can write a script to automatically download these images to a location we specify. Looking for tags like <img> is a form of searching for a pattern. Pattern searches are widely used in many applications like search engines. A regular expression(regex) is defined as a pattern that defines a class of strings. Given a string, we can then test if the string belongs to this class of patterns. Regular expressions are used by many of the unix utilities like grep, sed, awk, vi, emacs etc. We will learn the syntax of describing regex later. Pattern search is a useful activity and can be used in many applications. We are already doing some level of pattern search when we use wildcards such as *. For example, > ls *.c Lists all the files with c extension or ls ab* lists all file names that starts with ab in the current directory. These type of commands (ls,dir etc) work with windows, unix and most operating systems. That is, the command ls will look for files with a certain name patterns but are limited in ways we can describe patterns. The wild card (*) is typically used with many commands in unix. For example, cp *.c /afs/andrew.cmu.edu/course/15/123/handin/lab6/guna copies all.c files in the current directory to the given directory Unix commands like ls, cp can use simple wild card (*) type syntax to describe specific patterns and perform the corresponding tasks. However, there are many powerful unix utilities that can look for patterns described in general purpose notations. One such utility is the grep command. The grep command Grep command is a unix tools that can be used for pattern matching. Its description is given by the following.
2 grep NAME grep, egrep, fgrep - print lines matching a pattern SYNOPSIS grep [options] PATTERN [FILE...] grep [options] [-e PATTERN -f FILE] [FILE...] DESCRIPTION grep searches the named input FILEs (or standard input if no files are named, or the file name - is given) for lines containing a match to the given PATTERN. By default, grep prints the matching lines.. Source: unix manual The grep (Global Regular Expression Print) is a unix command utility that can be used to find specific patterns described in regular expressions, a notation which we will learn shortly. For example, the grep command can be used to match all lines containing a specific pattern. For example, grep <a href guna.html > output.txt writes all lines containing the matching substring <a href to the file output.txt grep unix command can be an extremely handy tool for searching for patterns. If we do grep foo filename it returns all lines of the file given by filename that matches string foo. Unix provide the command (pipe command) to send an input from one process to another process. Say for example, we would like to find all files that have the pattern guna. We can do the following to accomplish that task. > ls grep guna We note again that Pipe command is used to send the output from one command as input to another. For example, in the above command, we are sending the output from ls as input to grep command. If we need to find a pattern a.c in a file name (that is any file name that has the substring a.c, where dot(.) indicates that any single character can be substituted) we can give the command ls grep a.c So we can find file name that has the substring aac, abc, a_c etc.
3 Text Processing Languages There are many scripting languages that can be used to process textual data to extract and manipulate patterns of interest. Among some of the popular languages are awk, sed and perl. In this course, we will not go in detail into awk and sed, but will encourage students to read and understand some of the use cases of these utilities as a general topic of interest. We will however, later focus on perl, a popular programming language for parsing textual data. Before we learn perl programming, we will focus on learning regular expressions, a powerful way to describe general string patterns in perl. With the understanding of regular expressions and perl syntax, we can write powerful programs to accomplish interesting tasks. Regular expressions Regular expressions, that defines a pattern in a string, are used by many programs such as grep, sed, awk, vi, emacs etc. The PERL language (which we will discuss soon) is a scripting language where regular expressions can be used extensively for pattern matching. The origin of the regular expressions can be traced back to formal language theory or automata theory, both of which are part of theoretical computer science. A formal language consists of an alphabet, say {a,b,c} and a set of strings defined by the language. For example, a language defined on the alphabet {a,b,c} could be all strings that has at least one a. So ababb and abcbbc etc are valid strings while ccb is not. An automaton (or automata in plural) is a machine that can recognize valid strings generated by a formal language. A finite automata is a mathematical model of a finite state machine (FSM), an abstract model under which all modern computers are built. A FSM is a machine that consists of a set of finite states and a transition table. The FSM can be in any one of the states and can transit from one state to another based on a series of rules given by a transition function. Example: think about a FSM that has an alphabet {a,b} and 3 states, Q 0, Q 1, and Q 2 Define Q 0 as the initial state, Q 1 as intermediate and Q 2 as the final or accepting state. Complete the transitions so that the machine accepts any string that begins with zero or more a s immediately followed by one or more b s and then ending with an a. So the strings accepted by this FSM would include aba, aaba, ba, aaaaaabbbbbbbbba etc. Q 0 Q 1 Q 2
4 Finite automata can be built to recognize valid strings defined by a formal language. For example, we can use a machine as defined above to find all substrings that begins with zero or more a s immediately followed by one or more b s and then ending with an a. One important feature of a finite state machine is that it cannot be used to count. That is, FSM s have no memory. For example, we can build a machine to accept all strings that has even number of a s, but cannot build a FSM to count the a s in the string. Our discussion on FSM s now leads to regular expressions. A regular expressions and FSM s are equivalent concepts. Regular expression is a pattern that can be recognized by a FSM. Regular Expression Grammar Regular expression grammar defines the notation used to describe a regular expression. We discuss here the basic concepts of regular expression grammar including alternation, grouping and quantification. It should be noted that these grammar may not work exactly as is in every system. The grammar defined here are applicable to strong regex based languages such as perl. Alternation The vertical bar is used to describe alternating choices among two or more choices. For example, the notation a b c indicates that we can choose a or b or c as part of the string. Another example is that (c s)at describes the expressions cat or sat. Grouping Parenthesis can be used to describe the scope and precedence of operators. In the example above (c s) indicates that we can either begin with c or s but must immediately follow by at. Quantification Quantification is the notation used to define the number of symbols that could appear in the string. The most common quantifiers are?, * and + The? mark indicates that there is zero or one of the previous expression. For example aab?b would represents the strings aab and aabb etc. Color and Colour can be described by the regex Colou?r. The * indicates that zero or more of the previous expression can be accepted. For example: a(ab)*b indicates any string that begins with a, ends with a b, but can have any number of the substring ab in the middle. The strings ab, aabb, aababb are all valid strings described by the regex a(ab)*b. The + indicates at least one of the previous expression. For example go+gle would describe the expressions gogle, google, gooogle etc.
5 Other Facts. matches a single character.* matches any string [a-za-z]* matches any string of alphabetic characters [ag].* matches any string that starts with a or g [a-d].* matches any string that starts with a,b,c or d ^ab matches any string that begins with ab. In general, to match all lines that begins with any string use ^string grep command used with regular expression notation can make a powerful scripting language. When using grep, be sure to escape special characters with \. Eg: grep b\(a \ c \) b looks for patterns bab or bcb specifically Example 1. Find all subdirectories within a directory Answer: > ls l grep ^d Character Classes Character classes such as digits (0-9) can be described using a short hand syntax such as \d. A PERL(a language we shortly learn) programmer is free to use either [0-9] or \d to describe a character class. \d digit [0-9] \D non-digit [^0-9] \w word character [0-9a-z_A-Z] \W non-word character [^0-9a-z_A-Z] \s a whitespace character [ \t\n\r\f] \S a non-whitespace character [^ \t\n\r\f] Note: we will not use these shorthand notations with grep Other more general regex grammar includes 1. {n,m} at least n but not more than m times 2. {n,} match at least n times 3. {n} match exactly n times Examples: Find all patterns that has at least one but no more than 3, a s (ans: grep a\{1,3\} filename) Finding non-matches To exclude patterns we can use [^class]. For example, to exclude patterns that may contain a numeric digit, write [^0-9]. For example, we can exclude all lines that begins with a-z by writing > grep ^[^a-z] filename
6 Group Matching If we group a match by using ( ) then the matching groups are given by 1, 2 etc.. For example a regex "<h\([1-4]\)>.*h\([1-3]\)>" Returns 1 as the number that matched with the first group \([1-4]\) and 2 as the number that matched with the second group \([1-3]\) This can be useful in looking for patterns based on previous patterns found. For example The regex h[1-4] can match to h1, h2, h3, or h4. Suppose later in the expression we need to match the same index. We can do this by grouping [1-4] as \([1-4]\) --- note we need \( to make sure that ( is not used as a literal match --- Now the match is saved in a variable 1 (must refer to as \1) it can be used later in the expression to match similar indices. An application of this would be to look for <h1>. <\h1> but not <h1>. <\h2> Here is how you do that. > grep h\([1-4]\).*h\1 filename In general, the back-reference \n, where n is a single digit, matches the substring previously matched by the nth parenthesized sub expression of the regular expression. This concept is sometimes called back reference. We will expand these ideas later in Perl programming. Summarized Facts about regex Two regular expressions may be concatenated; the resulting regular expression matches any string formed by concatenating two substrings that respectively match the concatenated subexpressions. Two regular expressions may be joined by the infix operator the resulting regular expression matches any string matching either subexpression. Repetition takes precedence over concatenation, which in turn takes precedence over alternation. A whole subexpression may be enclosed in parentheses to override these precedence rules. The backreference \n, where n is a single digit, matches the substring previously matched by the nth parenthesized subexpression of the regular expression.
7 In basic regular expressions the metacharacters?, +, {,, (, and ) lose their special meaning; instead use the backslashed versions \?, \+, \{, \, \(, and \). Source: Unix Manual Exercises 1. Build a FSM that can accept any string that has even number of a s. Assume the alphabet is {a,b}. 2. Using grep command and regular expressions, list all files in the default directory that others can read or write 3. Write a regex that matches the s of the form [email protected]. Where userid is one of more word characters or + and the domain is one or more word characters. 4. Construct a FSM and a regular expression that matches patterns containing at least one ab followed by any number of b s. 5. Write the grep commands for each of the following tasks a. Find all patterns that matches the pattern ted or fred b. Find all patterns that matches ed, ted or fed c. Find all patterns that does not begin with g d. Find all patterns that begins with g or any digit from 0-9 e. Find all patterns that begins with guna f. Find lines in a file where the pattern sam occurs at least twice g. Find all lines in a file that contain addresses 6. Write a regex that matches any number between 1000 and Write a regex that matches any number between 100 and Write a regex that lists all the files in the current directory that was created in Nov and are txt files.
8 ANSWERS 1. Build a FSM that can accept any string that has even number of a s. Assume the alphabet is {a,b}. 2. Using grep command and regular expressions, list all files in the default directory that others can read or write Ans: ls l grep.\{7\}rw 3. Write a regex that matches the s of the form [email protected]. Where userid is one of more alpha characters or + and the domain is one or more alpha characters. Ans: grep [a-z+]\+@[a-z]\+.edu 4. Construct a FSM and a regular expression that matches patterns containing at least one ab followed by any number of b s. Ans: grep \(ab\)+b* 5. Write the grep commands for each of the following tasks a. Find all patterns that matches the pattern ted or fred [t/fr]ed b. Find all patterns that matches ed, ted or fed [t f]?ed c. Find all patterns that does not begin with g ^[^g] d. Find all patterns that begins with g or any digit from 0-9 ^(g [0-9]) e. Find all patterns that begins with guna ^(guna) f. Find lines in a file where the pattern sam occurs at least twice (sam).*\1 g. Find all lines in a html file that contain addresses (hint: mailto) 6. Write a regex that matches any number between 1000 and 9999 Ans: [1-9][0-9]{3}
Lecture 4. Regular Expressions grep and sed intro
Lecture 4 Regular Expressions grep and sed intro Previously Basic UNIX Commands Files: rm, cp, mv, ls, ln Processes: ps, kill Unix Filters cat, head, tail, tee, wc cut, paste find sort, uniq comm, diff,
Regular Expressions. Abstract
Regular Expressions Sanjiv K. Bhatia Department of Mathematics & Computer Science University of Missouri St. Louis St. Louis, MO 63121 email: [email protected] Abstract Regular expressions provide a powerful
Regular Expression Searching
Regular Expression Searching Regular expressions allow forensics analysts to search through large quantities of text information for patterns of data such as the following: Telephone Numbers Social Security
Regular Expressions Overview Suppose you needed to find a specific IPv4 address in a bunch of files? This is easy to do; you just specify the IP
Regular Expressions Overview Suppose you needed to find a specific IPv4 address in a bunch of files? This is easy to do; you just specify the IP address as a string and do a search. But, what if you didn
C H A P T E R Regular Expressions regular expression
7 CHAPTER Regular Expressions Most programmers and other power-users of computer systems have used tools that match text patterns. You may have used a Web search engine with a pattern like travel cancun
Unix Shell Scripts. Contents. 1 Introduction. Norman Matloff. July 30, 2008. 1 Introduction 1. 2 Invoking Shell Scripts 2
Unix Shell Scripts Norman Matloff July 30, 2008 Contents 1 Introduction 1 2 Invoking Shell Scripts 2 2.1 Direct Interpretation....................................... 2 2.2 Indirect Interpretation......................................
AN INTRODUCTION TO UNIX
AN INTRODUCTION TO UNIX Paul Johnson School of Mathematics September 24, 2010 OUTLINE 1 SHELL SCRIPTS Shells 2 COMMAND LINE Command Line Input/Output 3 JOBS Processes Job Control 4 NETWORKING Working From
Regular Expressions. In This Appendix
A Expressions In This Appendix Characters................... 888 Delimiters................... 888 Simple Strings................ 888 Special Characters............ 888 Rules....................... 891
Formal Languages and Automata Theory - Regular Expressions and Finite Automata -
Formal Languages and Automata Theory - Regular Expressions and Finite Automata - Samarjit Chakraborty Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology (ETH) Zürich March
COS 333: Advanced Programming Techniques
COS 333: Advanced Programming Techniques How to find me bwk@cs, www.cs.princeton.edu/~bwk 311 CS Building 609-258-2089 (but email is always better) TA's: Stephen Beard, Chris Monsanto, Srinivas Narayana,
Using Regular Expressions in Oracle
Using Regular Expressions in Oracle Everyday most of us deal with multiple string functions in Sql. May it be for truncating a string, searching for a substring or locating the presence of special characters.
University Convocation. IT 3203 Introduction to Web Development. Pattern Matching. Why Match Patterns? The Search Method. The Replace Method
IT 3203 Introduction to Web Development Regular Expressions October 12 Notice: This session is being recorded. Copyright 2007 by Bob Brown University Convocation Tuesday, October 13, 11:00 AM 12:15 PM
Kiwi Log Viewer. A Freeware Log Viewer for Windows. by SolarWinds, Inc.
Kiwi Log Viewer A Freeware Log Viewer for Windows by SolarWinds, Inc. Kiwi Log Viewer displays text based log files in a tabular format. Only a small section of the file is read from disk at a time which
Regular Expression Syntax
1 of 5 12/22/2014 9:55 AM EmEditor Home - EmEditor Help - How to - Search Regular Expression Syntax EmEditor regular expression syntax is based on Perl regular expression syntax. Literals All characters
grep, awk and sed three VERY useful command-line utilities Matt Probert, Uni of York grep = global regular expression print
grep, awk and sed three VERY useful command-line utilities Matt Probert, Uni of York grep = global regular expression print In the simplest terms, grep (global regular expression print) will search input
Regular Languages and Finite State Machines
Regular Languages and Finite State Machines Plan for the Day: Mathematical preliminaries - some review One application formal definition of finite automata Examples 1 Sets A set is an unordered collection
Regular Expressions. General Concepts About Regular Expressions
Regular Expressions This appendix explains regular expressions and how to use them in Cisco IOS software commands. It also provides details for composing regular expressions. This appendix has the following
Regular Expressions. The Complete Tutorial. Jan Goyvaerts
Regular Expressions The Complete Tutorial Jan Goyvaerts Regular Expressions: The Complete Tutorial Jan Goyvaerts Copyright 2006, 2007 Jan Goyvaerts. All rights reserved. Last updated July 2007. No part
Pushdown automata. Informatics 2A: Lecture 9. Alex Simpson. 3 October, 2014. School of Informatics University of Edinburgh [email protected].
Pushdown automata Informatics 2A: Lecture 9 Alex Simpson School of Informatics University of Edinburgh [email protected] 3 October, 2014 1 / 17 Recap of lecture 8 Context-free languages are defined by context-free
A Crash Course on UNIX
A Crash Course on UNIX UNIX is an "operating system". Interface between user and data stored on computer. A Windows-style interface is not required. Many flavors of UNIX (and windows interfaces). Solaris,
6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, 2010. Class 4 Nancy Lynch
6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, 2010 Class 4 Nancy Lynch Today Two more models of computation: Nondeterministic Finite Automata (NFAs)
Using PRX to Search and Replace Patterns in Text Strings
Paper CC06 Using PRX to Search and Replace Patterns in Text Strings Wenyu Hu, Merck Research Labs, Merck & Co., Inc., Upper Gwynedd, PA Liping Zhang, Merck Research Labs, Merck & Co., Inc., Upper Gwynedd,
Programming Languages CIS 443
Course Objectives Programming Languages CIS 443 0.1 Lexical analysis Syntax Semantics Functional programming Variable lifetime and scoping Parameter passing Object-oriented programming Continuations Exception
We will learn the Python programming language. Why? Because it is easy to learn and many people write programs in Python so we can share.
LING115 Lecture Note Session #4 Python (1) 1. Introduction As we have seen in previous sessions, we can use Linux shell commands to do simple text processing. We now know, for example, how to count words.
Regular Expressions and Pattern Matching [email protected]
Regular Expressions and Pattern Matching [email protected] Regular Expression (regex): a separate language, allowing the construction of patterns. used in most programming languages. very powerful
Compiler Construction
Compiler Construction Regular expressions Scanning Görel Hedin Reviderad 2013 01 23.a 2013 Compiler Construction 2013 F02-1 Compiler overview source code lexical analysis tokens intermediate code generation
03 - Lexical Analysis
03 - Lexical Analysis First, let s see a simplified overview of the compilation process: source code file (sequence of char) Step 2: parsing (syntax analysis) arse Tree Step 1: scanning (lexical analysis)
Introduction to Finite Automata
Introduction to Finite Automata Our First Machine Model Captain Pedro Ortiz Department of Computer Science United States Naval Academy SI-340 Theory of Computing Fall 2012 Captain Pedro Ortiz (US Naval
AWK: The Duct Tape of Computer Science Research. Tim Sherwood UC Santa Barbara
AWK: The Duct Tape of Computer Science Research Tim Sherwood UC Santa Barbara Duct Tape Systems Research Environment Lots of simulators, data, and analysis tools Since it is research, nothing works together
Hands-On UNIX Exercise:
Hands-On UNIX Exercise: This exercise takes you around some of the features of the shell. Even if you don't need to use them all straight away, it's very useful to be aware of them and to know how to deal
Lecture 2: Regular Languages [Fa 14]
Caveat lector: This is the first edition of this lecture note. Please send bug reports and suggestions to [email protected]. But the Lord came down to see the city and the tower the people were building.
NiCE Log File Management Pack. for. System Center Operations Manager 2012. Quick Start Guide
NiCE Log File Management Pack for System Center Operations Manager 2012 Version 1.30 March 2015 Quick Start Guide Legal Notices NiCE IT Management Solutions GmbH makes no warranty of any kind with regard
UNIX, Shell Scripting and Perl Introduction
UNIX, Shell Scripting and Perl Introduction Bart Zeydel 2003 Some useful commands grep searches files for a string. Useful for looking for errors in CAD tool output files. Usage: grep error * (looks for
Content of this lecture. Regular Expressions in Java. Hello, world! In Java. Programming in Java
Content of this lecture Regular Expressions in Java 2010-09-22 Birgit Grohe A very small Java program Regular expressions in Java Metacharacters Character classes and boundaries Quantifiers Backreferences
CMPSCI 250: Introduction to Computation. Lecture #19: Regular Expressions and Their Languages David Mix Barrington 11 April 2013
CMPSCI 250: Introduction to Computation Lecture #19: Regular Expressions and Their Languages David Mix Barrington 11 April 2013 Regular Expressions and Their Languages Alphabets, Strings and Languages
Basic C Shell. [email protected]. 11th August 2003
Basic C Shell [email protected] 11th August 2003 This is a very brief guide to how to use cshell to speed up your use of Unix commands. Googling C Shell Tutorial can lead you to more detailed information.
Introduction to Searching with Regular Expressions
Introduction to Searching with Regular Expressions Christopher M. Frenz Department of Computer Engineering Technology New York City College of Technology (CUNY) 300 Jay St Brooklyn, NY 11201 Email: [email protected]
Regular Expressions with Nested Levels of Back Referencing Form a Hierarchy
Regular Expressions with Nested Levels of Back Referencing Form a Hierarchy Kim S. Larsen Odense University Abstract For many years, regular expressions with back referencing have been used in a variety
Reading 13 : Finite State Automata and Regular Expressions
CS/Math 24: Introduction to Discrete Mathematics Fall 25 Reading 3 : Finite State Automata and Regular Expressions Instructors: Beck Hasti, Gautam Prakriya In this reading we study a mathematical model
Regular Expressions (in Python)
Regular Expressions (in Python) Python or Egrep We will use Python. In some scripting languages you can call the command grep or egrep egrep pattern file.txt E.g. egrep ^A file.txt Will print all the line
A UNIX/Linux in a nutshell
bergman p.1/23 A UNIX/Linux in a nutshell Introduction Linux/UNIX Tommi Bergman tommi.bergman[at]csc.fi Computational Environment & Application CSC IT center for science Ltd. Espoo, Finland bergman p.2/23
Unix the Bare Minimum
Unix the Bare Minimum Norman Matloff September 27, 2005 c 2001-2005, N.S. Matloff Contents 1 Purpose 2 2 Shells 2 3 Files and Directories 4 3.1 Creating Directories.......................................
HP-UX Essentials and Shell Programming Course Summary
Contact Us: (616) 875-4060 HP-UX Essentials and Shell Programming Course Summary Length: 5 Days Prerequisite: Basic computer skills Recommendation Statement: Student should be able to use a computer monitor,
CS103B Handout 17 Winter 2007 February 26, 2007 Languages and Regular Expressions
CS103B Handout 17 Winter 2007 February 26, 2007 Languages and Regular Expressions Theory of Formal Languages In the English language, we distinguish between three different identities: letter, word, sentence.
Scanner. tokens scanner parser IR. source code. errors
Scanner source code tokens scanner parser IR errors maps characters into tokens the basic unit of syntax x = x + y; becomes = + ; character string value for a token is a lexeme
Tutorial 0A Programming on the command line
Tutorial 0A Programming on the command line Operating systems User Software Program 1 Program 2 Program n Operating System Hardware CPU Memory Disk Screen Keyboard Mouse 2 Operating systems Microsoft Apple
Automata and Formal Languages
Automata and Formal Languages Winter 2009-2010 Yacov Hel-Or 1 What this course is all about This course is about mathematical models of computation We ll study different machine models (finite automata,
Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program.
Name: Class: Date: Exam #1 - Prep True/False Indicate whether the statement is true or false. 1. Programming is the process of writing a computer program in a language that the computer can respond to
Introduction to Automata Theory. Reading: Chapter 1
Introduction to Automata Theory Reading: Chapter 1 1 What is Automata Theory? Study of abstract computing devices, or machines Automaton = an abstract computing device Note: A device need not even be a
Finite Automata and Regular Languages
CHAPTER 3 Finite Automata and Regular Languages 3. Introduction 3.. States and Automata A finite-state machine or finite automaton (the noun comes from the Greek; the singular is automaton, the Greek-derived
2110711 THEORY of COMPUTATION
2110711 THEORY of COMPUTATION ATHASIT SURARERKS ELITE Athasit Surarerks ELITE Engineering Laboratory in Theoretical Enumerable System Computer Engineering, Faculty of Engineering Chulalongkorn University
Thirty Useful Unix Commands
Leaflet U5 Thirty Useful Unix Commands Last revised April 1997 This leaflet contains basic information on thirty of the most frequently used Unix Commands. It is intended for Unix beginners who need a
Bachelors of Computer Application Programming Principle & Algorithm (BCA-S102T)
Unit- I Introduction to c Language: C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating
Introduction to Shell Programming
Introduction to Shell Programming what is shell programming? about cygwin review of basic UNIX TM pipelines of commands about shell scripts some new commands variables parameters and shift command substitution
dtsearch Regular Expressions
dtsearch Regular Expressions In the AccessData Forensic Toolkit, regular expression searching capabilities has been incorporated in the dtsearch index search tab. This functionality does not use RegEx++
A Brief Introduction to the Use of Shell Variables
A Brief Introduction to the Use of Shell Variables Norman Matloff July 25, 2001 Contents 1 Two Popular Shells: tcsh and bash 1.1 Overview There are many different shells available for Unix systems. Here
Cisco Networking Academy Program Curriculum Scope & Sequence. Fundamentals of UNIX version 2.0 (July, 2002)
Cisco Networking Academy Program Curriculum Scope & Sequence Fundamentals of UNIX version 2.0 (July, 2002) Course Description: Fundamentals of UNIX teaches you how to use the UNIX operating system and
Managing Code Development Using CCS Project Manager
Application Report SPRA762 - June 2001 Managing Code Development Using CCS Project Manager Chuck Farrow Andy Thé Northeast Applications ABSTRACT This application report presents the new features available
ICS 351: Today's plan
ICS 351: Today's plan routing protocols linux commands Routing protocols: overview maintaining the routing tables is very labor-intensive if done manually so routing tables are maintained automatically:
Flex/Bison Tutorial. Aaron Myles Landwehr [email protected] CAPSL 2/17/2012
Flex/Bison Tutorial Aaron Myles Landwehr [email protected] 1 GENERAL COMPILER OVERVIEW 2 Compiler Overview Frontend Middle-end Backend Lexer / Scanner Parser Semantic Analyzer Optimizers Code Generator
Being Regular with Regular Expressions. John Garmany Session
Being Regular with Regular Expressions John Garmany Session John Garmany Senior Consultant Burleson Consulting Who Am I West Point Graduate GO ARMY! Masters Degree Information Systems Graduate Certificate
USEFUL UNIX COMMANDS
cancel cat file USEFUL UNIX COMMANDS cancel print requested with lp Display the file cat file1 file2 > files Combine file1 and file2 into files cat file1 >> file2 chgrp [options] newgroup files Append
Introduction to Big Data Analysis for Scientists and Engineers
Introduction to Big Data Analysis for Scientists and Engineers About this white paper: This paper was written by David C. Young, an employee of CSC. It was written as supplemental documentation for use
CS2043 - Unix Tools & Scripting Lecture 9 Shell Scripting
CS2043 - Unix Tools & Scripting Lecture 9 Shell Scripting Spring 2015 1 February 9, 2015 1 based on slides by Hussam Abu-Libdeh, Bruno Abrahao and David Slater over the years Announcements Coursework adjustments
CSE 341 Lecture 28. Regular expressions. slides created by Marty Stepp http://www.cs.washington.edu/341/
CSE 341 Lecture 28 Regular expressions slides created by Marty Stepp http://www.cs.washington.edu/341/ Influences on JavaScript Java: basic syntax, many type/method names Scheme: first-class functions,
Automata Theory. Şubat 2006 Tuğrul Yılmaz Ankara Üniversitesi
Automata Theory Automata theory is the study of abstract computing devices. A. M. Turing studied an abstract machine that had all the capabilities of today s computers. Turing s goal was to describe the
5.1 Radical Notation and Rational Exponents
Section 5.1 Radical Notation and Rational Exponents 1 5.1 Radical Notation and Rational Exponents We now review how exponents can be used to describe not only powers (such as 5 2 and 2 3 ), but also roots
Regular expressions and sed & awk
Regular expressions and sed & awk Regular expressions Key to powerful, efficient, and flexible text processing by allowing for variable information in the search patterns Defined as a string composed of
DigitalPersona. Password Manager Pro. Version 5.0. Administrator Guide
DigitalPersona Password Manager Pro Version 5.0 Administrator Guide 2010 DigitalPersona, Inc. All Rights Reserved. All intellectual property rights in the DigitalPersona software, firmware, hardware and
Informatique Fondamentale IMA S8
Informatique Fondamentale IMA S8 Cours 1 - Intro + schedule + finite state machines Laure Gonnord http://laure.gonnord.org/pro/teaching/ [email protected] Université Lille 1 - Polytech Lille
Pushdown Automata. place the input head on the leftmost input symbol. while symbol read = b and pile contains discs advance head remove disc from pile
Pushdown Automata In the last section we found that restricting the computational power of computing devices produced solvable decision problems for the class of sets accepted by finite automata. But along
Unix Scripts and Job Scheduling
Unix Scripts and Job Scheduling Michael B. Spring Department of Information Science and Telecommunications University of Pittsburgh [email protected] http://www.sis.pitt.edu/~spring Overview Shell Scripts
Eventia Log Parsing Editor 1.0 Administration Guide
Eventia Log Parsing Editor 1.0 Administration Guide Revised: November 28, 2007 In This Document Overview page 2 Installation and Supported Platforms page 4 Menus and Main Window page 5 Creating Parsing
Lecture 5. sed and awk
Lecture 5 sed and awk Last week Regular Expressions grep egrep Today Stream manipulation: sed awk Sed: Stream-oriented, Non- Interactive, Text Editor Look for patterns one line at a time, like grep Change
SYSTEMS OF EQUATIONS AND MATRICES WITH THE TI-89. by Joseph Collison
SYSTEMS OF EQUATIONS AND MATRICES WITH THE TI-89 by Joseph Collison Copyright 2000 by Joseph Collison All rights reserved Reproduction or translation of any part of this work beyond that permitted by Sections
Regular Expressions and Automata using Haskell
Regular Expressions and Automata using Haskell Simon Thompson Computing Laboratory University of Kent at Canterbury January 2000 Contents 1 Introduction 2 2 Regular Expressions 2 3 Matching regular expressions
CSC4510 AUTOMATA 2.1 Finite Automata: Examples and D efinitions Definitions
CSC45 AUTOMATA 2. Finite Automata: Examples and Definitions Finite Automata: Examples and Definitions A finite automaton is a simple type of computer. Itsoutputislimitedto yes to or no. It has very primitive
Extreme computing lab exercises Session one
Extreme computing lab exercises Session one Miles Osborne (original: Sasa Petrovic) October 23, 2012 1 Getting started First you need to access the machine where you will be doing all the work. Do this
PHP Debugging. Draft: March 19, 2013 2013 Christopher Vickery
PHP Debugging Draft: March 19, 2013 2013 Christopher Vickery Introduction Debugging is the art of locating errors in your code. There are three types of errors to deal with: 1. Syntax errors: When code
7 Why Use Perl for CGI?
7 Why Use Perl for CGI? Perl is the de facto standard for CGI programming for a number of reasons, but perhaps the most important are: Socket Support: Perl makes it easy to create programs that interface
Understand for FORTRAN
Understand Your Software... Understand for FORTRAN User Guide and Reference Manual Version 1.4 Scientific Toolworks, Inc. Scientific Toolworks, Inc. 1579 Broad Brook Road South Royalton, VT 05068 Copyright
PROGRAMMING FOR BIOLOGISTS. BIOL 6297 Monday, Wednesday 10 am -12 pm
PROGRAMMING FOR BIOLOGISTS BIOL 6297 Monday, Wednesday 10 am -12 pm Tomorrow is Ada Lovelace Day Ada Lovelace was the first person to write a computer program Today s Lecture Overview of the course Philosophy
Unix Sampler. PEOPLE whoami id who
Unix Sampler PEOPLE whoami id who finger username hostname grep pattern /etc/passwd Learn about yourself. See who is logged on Find out about the person who has an account called username on this host
Parsing Technology and its role in Legacy Modernization. A Metaware White Paper
Parsing Technology and its role in Legacy Modernization A Metaware White Paper 1 INTRODUCTION In the two last decades there has been an explosion of interest in software tools that can automate key tasks
PHP Tutorial From beginner to master
PHP Tutorial From beginner to master PHP is a powerful tool for making dynamic and interactive Web pages. PHP is the widely-used, free, and efficient alternative to competitors such as Microsoft's ASP.
awk A UNIX tool to manipulate and generate formatted data
awk A UNIX tool to manipulate and generate formatted data Alexander Voigt Technische Universität Dresden Institut für Kern- und Teilchenphysik Version_05_21 /01234/546 78994: IKTP Computing Kaffee 10 January
CS106A, Stanford Handout #38. Strings and Chars
CS106A, Stanford Handout #38 Fall, 2004-05 Nick Parlante Strings and Chars The char type (pronounced "car") represents a single character. A char literal value can be written in the code using single quotes
Introduction to Mac OS X
Introduction to Mac OS X The Mac OS X operating system both a graphical user interface and a command line interface. We will see how to use both to our advantage. Using DOCK The dock on Mac OS X is the
Cross Site Scripting (XSS) and PHP Security. Anthony Ferrara NYPHP and OWASP Security Series June 30, 2011
Cross Site Scripting (XSS) and PHP Security Anthony Ferrara NYPHP and OWASP Security Series June 30, 2011 What Is Cross Site Scripting? Injecting Scripts Into Otherwise Benign and Trusted Browser Rendered
Introduction to Python
WEEK ONE Introduction to Python Python is such a simple language to learn that we can throw away the manual and start with an example. Traditionally, the first program to write in any programming language
Users Guide. V1.0 Page 1
V1.0 Page 1 Contents Purpose of this Guide... 3 About Email2Ticket... 3 Email2Ticket How It Works... 3 Email2Ticket Use Cases... 4 Mailbox Parser Use Cases... 4 Mailbox Monitor Use Cases... 4 Email2Ticket
INASP: Effective Network Management Workshops
INASP: Effective Network Management Workshops Linux Familiarization and Commands (Exercises) Based on the materials developed by NSRC for AfNOG 2013, and reused with thanks. Adapted for the INASP Network
CE 504 Computational Hydrology Computational Environments and Tools Fritz R. Fiedler
CE 504 Computational Hydrology Computational Environments and Tools Fritz R. Fiedler 1) Operating systems a) Windows b) Unix and Linux c) Macintosh 2) Data manipulation tools a) Text Editors b) Spreadsheets
Perl in a nutshell. First CGI Script and Perl. Creating a Link to a Script. print Function. Parsing Data 4/27/2009. First CGI Script and Perl
First CGI Script and Perl Perl in a nutshell Prof. Rasley shebang line tells the operating system where the Perl interpreter is located necessary on UNIX comment line ignored by the Perl interpreter End
JavaScript: Introduction to Scripting. 2008 Pearson Education, Inc. All rights reserved.
1 6 JavaScript: Introduction to Scripting 2 Comment is free, but facts are sacred. C. P. Scott The creditor hath a better memory than the debtor. James Howell When faced with a decision, I always ask,
Fundamentele Informatica II
Fundamentele Informatica II Answer to selected exercises 1 John C Martin: Introduction to Languages and the Theory of Computation M.M. Bonsangue (and J. Kleijn) Fall 2011 Let L be a language. It is clear
