0% found this document useful (0 votes)
96 views

Lab 5

The document discusses regular expressions and provides examples of using egrep, grep, sed, and awk commands. It begins with background information on egrep (extended grep) and differences between basic and extended regular expressions. It then provides questions and examples to practice writing regular expressions and using egrep and sed commands to extract specific information from a student record data file according to those regular expressions.

Uploaded by

Nada Jamaan
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
96 views

Lab 5

The document discusses regular expressions and provides examples of using egrep, grep, sed, and awk commands. It begins with background information on egrep (extended grep) and differences between basic and extended regular expressions. It then provides questions and examples to practice writing regular expressions and using egrep and sed commands to extract specific information from a student record data file according to those regular expressions.

Uploaded by

Nada Jamaan
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Lab5 System Programming CS360

Regular Expressions, grep/egrep, sed and awk 1. Background


The program egrep stands for extended grep. It supports so-called extended regular expressions. Both grep and egrep support an option -o to print only the part of the line that matches the expression. The gnu sed program supports the -r option that tells sed to use regular expressions like egrep. So when you use sed, use it with sed -r. The gnu awk program has an option --posix that makes awk behave like egrep so that it understands the use of {n}, {n,m} without having to put in extra backslashes \. What is the difference between extended regular expressions and the regular expressions that grep uses? In basic regular expressions the metacharacters ?, +, {, |, (, and ) lose their special meaning; instead use the backslashed versions \?, \+, \{, \|, \(, and \).

2. Questions
2.1 egrepping through the dictionary
Your dictionary is a file /usr/share/dict/words Use egrep to: 1. Find all words containing three letter as. 2. Find all words containing no vowels. (A vowel is one of the letters a, e, i, o and u.) 3. Find all words containing at least 5 vowels. Count the number of matching words. 4. Find all words containing exactly 5 vowels. Count the number of matching words.

2.2 egrep: Selecting data from student records


1. Save the file data.txt to your local directory. For this data, write a regular expression that will select each of the following. Test it on the data using egrep o 2. Student number 3. Hong Kong ID. Count the number of Hong Kong ids. 4. The course code. Count the number of courses. The course and year are shown in this case on the sixth line: 2241/2. The course is 2241; this is the second year of study.

5. The year of study 6. The company the student works for 7. The home telephone number 8. The gender of the student 9. The students name

2.3 Using sed


Write a sed expression to output only the data for which you wrote each of the regular expressions above. For example, write a sed command that will print only the HK ids and all the HK ids from the file, using the regular expression you wrote for question 3. You should write eight sed expressions. 1. Student number 2. Hong Kong ID. 3. The course code. 4. The year of study 5. The company the student works for 6. The home telephone number 7. The gender of the student 8. The students name

You might also like