Olympic College

Return to Kevin's Home Page
Return to the OC Homepage

 Syllabus for CIS 215 – Introduction to Regular Expressions

Fall 2012 (Revised 9/23/12)



  • None


Course Description:

Students will search and manipulate text strings using formal regular expressions methods to support programming and network environments.

This class is intended for students with fundamental skills in computer programming and familiarity with one of the following technologies: Perl, Java, .NET, C#, Python, PCRE, PHP, the vi editor, JavaScript, or *NIX shell tools. Students are strongly encouraged to contact faculty before enrolling in this class to review the prerequisite skills and knowledge needed for a successful experience.

The prerequisite skills may be obtained by taking CIS 141, CIS 142, CIS 143, CIS 206, CIS 219, CIS 261, or CIS 262

Course Learning Objectives:

Upon successful completion of this course you will be able to:

  • Read and write a regular expression (regex) that describes a simple pattern in text
  • Make use of several tools that use regular expressions, such as grep, egrep, and sed
  • Describe the syntax of sets, complements, repetitions, and alternatives
  • Use groups for matching parts of a pattern
  • Demonstrate the use of a regex in conjunction with a scripting language such as Perl or awk
  • Use the regexp search and replace commands in a programming editor
  • Perform simple form verification using pattern matching and regular expressions


Course Learning Outcomes: The students will search and manipulate text strings using formal regular expressions methods to support programming and network environments.

Credits: 2

Required Equipment:

High-Speed, Broadband, Internet Access (wired or wireless)

USB Headset (speaker and microphone)

Flash Memory Device (i.e. “Thumb” drive), 16 GB or larger, or an external USB Drive (any size – but 160 GB or larger is recommended), unused (i.e. “empty).

Optional Equipment:

USB Webcam (e.g. Logitech QuickCam Pro 9000)

Spare computer for host software (e.g. Windows XP Professional, Windows 7, Windows Server 2008, etc.)

If you desire to use a spare computer, but cannot afford one, you can check out a spare computer from the T-213 Lab for the duration of the quarter.  See one of the T-213 Lab technicians or an instructor in order to complete the proper paperwork.


Required Software:

VMware Workstation 7.1.6 for Windows (32-bit or 64-bit)


VMware Workstation 9.0.2 for Windows (64-bit only)


Optional Software: (available via download from MSDNAA/ELMS and other sources)

Microsoft Virtual PC 2007 (or Hyper-V 2.0/3.0)

Windows 7 Professional (32-bit or 64-bit) with Service Pack 1

Windows Server 2008 Enterprise Edition (32-bit or 64-bit) with Service Pack 2

Windows Server 2008 R2 Enterprise Edition (64-bit) with Service Pack 1

Windows Server 2003 R2 Enterprise Edition (32-bit) without Hyper-V with Service Pack 2

Windows XP Professional (32-bit) with Service Pack 3


Optional software can be obtained from one of the following sources.  See one of the T-213 Lab technicians or an instructor for assistance with obtaining course software at no additional cost to the student.

Microsoft Developer Network – Academic Alliance (MSDNAA/ELMS) –


VMware Academic Partner Program – VMAPP –



Course Materials (Required):











Introducing Regular Expressions

1st Edition

Michael Fitzgerald

O’Reilly Media, Inc.


Click here for website






Course Outline

This course will consist of 12 modules covering the following topics:

Chapter 1: What Is a Regular Expression?

Chapter 2: Simple Pattern Matching

Chapter 3: Boundaries

Chapter 4: Alternation, Groups, and Backreferences

Chapter 5: Character Classes

Chapter 6: Matching Unicode and Other Characters

Chapter 7: Quantifiers

Chapter 8: Lookarounds

Chapter 9: Marking Up a Document with HTML

Chapter 10: The End of the Beginning


Course Schedule:

Module 0: Getting Started (Orientation) – Overview of Regular Expressions

Module 1: Chapter 1: What Is a Regular Expression?

Module 2: Chapter 2: Simple Pattern Matching

Module 3: Chapter 3: Boundaries

Module 4: Chapter 4: Alternation, Groups, and Backreferences

Module 5: Chapter 5: Character Classes

Module 6: Chapter 6: Matching Unicode and Other Characters

Module 7: Chapter 7: Quantifiers

Module 8: Chapter 8: Lookarounds

Module 9: Chapter 9: Marking Up a Document with HTML

Module 10: Chapter 10: The End of the Beginning

Final Module: Course Wrap-Up


Chat Sessions

Discussion is a very important component of this course. Just like in a traditional class, in this hybrid course you will be expected to participate in discussions with your instructor and fellow students about course learning objectives.


Lecture Schedule:

CIS 215 meets 3 hours per week online (via Blackboard® Collaborate™). Each week the instructor will use the [virtual] classroom time to introduce or review Windows 7 topics, to answer questions from the homework assignments and assessments, and to perform hands-on training. Additional online time will be needed for; research and study activities, submission of assignments, and assessments.  All online sessions are recorded and available for viewing at a later date and time. Go to http://angel.olympic.edu for the schedule and the link to these online class sessions.

On-Ground Sessions

CIS 215 will not be meeting, face-to-face (F2F), during the summer quarter – in order to accommodate the needs of those students in Shelton, Poulsbo, those whose schedules prohibit a more traditional (face-to-face – F2F) class room environment, and others who cannot make it to the main campus in Bremerton during traditional class times/days.  If you feel that you need the F2F element of a more tradition classroom, this course is taught on weekdays (on-ground) during the spring quarter.  Using the Angel Learning website, TestOut! LabsOnline website, and the Professors Online website, online time will be used for research and study activities, submission of assignments, and the completion of online assessments. Go to http://angel.olympic.edu for the schedule and the link to these online class resources.

This online course includes no other “on-ground” class sessions, outside of the labs that require the workstations, specialized software, or other resources of the T-213 Lab that would require your physical presence there.


Virtual Classroom Sessions and Chat Sessions:

The Instructor delivers three clock hours of real-time lecture/chat scheduled at pre-selected times in a seven-day calendar week to accommodate diverse schedules. This time is open to change. You are not required to attend the real-time lecture/chats. The real-time lecture/chats focus on the Module topic for each week of the eight-week session and are archived, so you can review the discussion on your own schedule. Real-time chats are not included in the course grade, but serve as a valuable resource for your learning experience. Recordings of the online [virtual] classroom sessions will be available weekly (immediately after the session has completed) on ANGEL.  Look under <Communicate> and then <Collaborate Live!> and select the <Recordings> button and choose a date on the calendars which includes the dates that you are interested in.

  • Tuesdays 1:30 P.M. to 3:00 P.M. (go to the Collaborate Live! “nugget” within the Angel Learning website)
  • Thursdays 1:30 P.M. to 3:00 P.M. (go to the Collaborate Live! “nugget” within the Angel Learning website)

You can also find links to the “live” online lecture/chat sessions on the ANGEL Learning Course Calendar tab.  The links to the session recordings can only be found on the “Communication” tab, within the “Blackboard Collaborate” nugget, though.


Other Course Components –


Online Testing will conducted via the Angel Learning Management System (LMS) website - http://angel.olympic.edu/


Communicating through WAOL (via the ANGEL Learning website):

Please be aware that the best way to communicate with your instructor is to use the internal email system within the Angel Learning website.  Optionally you can use your Olympic College-provided student email address (e.g. kevinblackwell@inst.oc.ctc.edu and the Outlook Web Access – OWA – website – https://inst.oc.ctc.edu/exchange), but the preferred, and most reliable, method of communication will be thru ANGEL.  If you use external email (e.g. Gmail, Yahoo, AOL, MSN, Hotmail, etc.), then please be sure to add your [real] name and class number to your email so your instructor will know who it is from. If you prefer not to use the internal ANGEL email system, then you should use only your OC email address for online classes, because other external email tends to get filtered-out as it attempts to navigate its way through the Olympic College junk e-mail (S*PAM) filters. If there is something specific to you and your grades please send me an email otherwise, generally speaking, post a message to the Discussion Forum for the module that you are working on.

E-mail Etiquette (for email originating outside of ANGEL – e.g. OWA) – The following guidelines should be adhered to in order to assure a fast, accurate and meaningful response from e-mail sent by the student to the instructor (outside of the [internal] Angel email system – e.g. via Outlook Web Access [OWA]).  Remember, the instructor has many students in many classes.  Incorrectly formatted e-mail may hinder/delay a response back from your instructor.  Always try to use the [internal] Angel email system (found under the “Communicate” tab within the Angel Learning system) for course related matters.  If that doesn’t work, use your OC Webmail by going to the following URL in your favorite browser (e.g. IE7) – https://inst.oc.ctc.edu/exchange.

Use only the e-mail address at the bottom of the syllabus for corresponding with your instructor about non-course related matters (or, if the ANGEL Learning course mail system appears to be inaccessible or not working).



The subject line should always include your course number and the student’s name.  Cryptic e-mail addresses are too hard to correlate with “real” student names.  If you don’t put an appropriate subject line on your e-mail, you may not get a response.


Subject Line: CMPTR_215, Blackwell, Kevin – This is what I need help with


File naming standards for CIS 215 – The following naming standards must be used when submitting assignments by electronic mail or via the “Drop Box” within ANGEL.

Lab – Course name, followed by the Module Number (Week Number), Last Name, First Name, abbreviation for the Assignment type and Assignment number

Example: CIS215_Mod10_Blackwell_Kevin_LAB.doc


Titling your homework for CIS 215 – The following information must appear at the top of each and every one of your homework assignments (at least at the top of the first page) in order not to lose points for improperly submitted homework.

Name:                                     (e.g. Joe Smith)

Date:                           (e.g. Sept 23, 2012)

Course Number:         (e.g. CIS 215)

Assignment Number: (e.g. Module 1 Homework)


Course Evaluation –


Graded Assignments:

Every Module has 2 graded assignments. Instructions for each graded assignment are provided within the Module for each week. Each graded assignment concludes with one or more deliverable products. Deliverable products may range from a Microsoft Word document with a screenshot of your complete LabSim assignment, or the results of a “hands on” lab, to the results of an online quiz or a short examination. These deliverable products are evaluated using the course evaluation methods.

Module assignments will be completed and turned in weekly.  This includes TestOut LabSims and weekly assessments.  Incomplete homework assignments will have deductions made accordingly, receiving only partial credit.

*NO WORK will be accepted after the end of the quarter . . . NO EXCEPTIONS.


Student Assessment:

A student assessment is included for every Module. When two or more chapters are covered during one Module, sometimes a single assessment will be used to cover all chapters and other times multiple assessments will be used to cover the multiple chapters.  The course platform’s testing feature is utilized for this student Self-Assessment. True/False, Multiple Choice, Yes/No, or Matching are used for students to evaluate their own knowledge acquisition for each Module’s identified course outcomes.

Assignment Weighting:


Assignment Type

Points Possible




Module 0: Getting Started (Orientation)

Discussion Board (Extra Credit)

15* (extra credit)


Angel Pre-survey

10* (extra credit)




 Module 1









 Module 2









 Module 3









 Module 4









 Module 5









 Module 6









 Module 7









 Module 8









 Module 9









 Module 10









Final Module

Final Module LabSim

50* (extra credit)


Final Week Survey (Faculty Assessment)

10* (extra credit)








Course Evaluation Grading Scale

Letter Grade


Qualitative Definition

Quantitative Definition



Superior course outcomes mastery

96 - 100




93 - 95




90 - 92



Exceeds acceptable course outcomes mastery

87 - 89




83  - 86




80 - 82



Acceptable course outcomes mastery

77 - 79




73 - 76




70 - 72



Minimum course outcomes mastery

67 - 69




63 - 66



Failure to master course outcomes

62 - Less


Policies –

Attendance Policy:

The Attendance Policy requires students to participate in their online course at least two out of seven days during each Module week. Participation is defined as uploading homework assignments, completing online assessments, classroom attendance, or discussion board posting. A student not attending the first week will be dropped from the course. If an instructor believes a student’s absences have been excessive and unjustified, the instructor may request that the student be withdrawn from the course.

Participation Requirement:

The nature of this course is sequential and comprehensive; your regular participation and communication will inevitably reflect in your performance. If you experience difficulty with the material, contact me immediately; do not fall behind and disappear.

If you wish to withdraw from this course, please inform your instructor of your decision and file the appropriate paperwork with the college’s administration.

If you are having problems or feel you are lagging behind, please contact your instructor, so that he/she may explore options to find a solution.


Feedback on module assignments for the week:

The instructor (or his/her teaching assistant) will send feedback on all graded assignments within 7 days (or less) after the assignment is submitted. If you submit an assignment late it will be graded together with the following week’s work. Please see sample grading rubric so you understand the grading process.


Late Assignments:

The instructor reserves the right to deduct 10% of the points from the total points possible for an assignment, for each week an assignment is late.

Similarly, the instructor reserves the right to refuse to accept any late assignments after two weeks in which it is due, if the instructor and the student have not negotiated and mutually agreed upon an alternative submission plan -- in advance (at least 48 hours before the assignment due date/time).

If you submit any late assignments (i.e. after the grading “cycle” has been completed), you will not receive any late credit for that assignment unless you send an email message to your instructor ASKING that the assignment be considered for “late grading.”  No credit will be assigned otherwise.  Unless you adhere to this premise, the score of “0” will remain in the course grade book for any assignments that miss the assignment due date.

Because your grade is dependent on participation and discussions, DO NOT submit all your week's work on the final day. You will not receive credit for your participation if you do.


There will be no make-up tests unless previously arranged with the instructor.


Technical difficulties:

Everyone experiences technical difficulties including the ANGEL Learning website, WAOL, your Internet service provider, and even Bill Gates. You should have an alternate plan in the event of technical difficulties. Please notify me immediately if this is happening to you.  You may call me, send an email or use a school computer.


Student Conduct:

Everyone deserves to have a good learning environment. I will follow the rules of the college in the classroom. Please see the Student Handbook for the Student Conduct Code. All forms of dishonesty will be subject to immediate disciplinary action (see the section below on Academic Honesty). Classroom disruptions such as tardiness, talking during lecture and cell phone use are not acceptable. Repeated infractions will be referred to the Vice President of Student Services. Please turn off your cell phone before entering the classroom.



Academic Honesty

At Olympic College, students are expected to demonstrate academic integrity by completing their own work assignments and assessments. Effective planning and progress must be accomplished for students to be successful in their degree program of study. Submission of work from another person, whether it is from printed sources or someone other than the student, previously graded papers, papers submitted without proper source citation, or submitting the same paper to multiple courses without the knowledge of all instructors involved can result in a failing grade or be reported to the Olympic College Vice Principle of Student Services for appropriate sanctions or disciplinary actions. All students are expected to adhere to the standards as set forth in the Student Code of Conduct and Statement on Academic Honesty.

The administration, faculty, and student government of Olympic College believe strongly in the concept of an honor system. This belief is based on the knowledge that in competitive professional environments, greater emphasis is placed on originality and integrity of ideas and work. All members of the Olympic College academic community, including faculty, students, and administration, are expected to assist in maintaining the integrity of the College, which includes reporting incidents that violate the Statement on Academic Honesty.

For Olympic College course work, please note that learning events are to be that of the student’s own work, and group projects are collaborative efforts.

Additional policies can be found at:


Homework Policy:

You are responsible for doing all online assignments, reviewing the online materials for that week, participating in the group activity for the week, and turning in all assignments on time. You will also have a weekly reading assignment, which will support that week's learning objectives, and which you are encouraged to complete ahead of time. Post any questions that you may have to either the common area of your class, where the questions may be answered by any students, or post them directly to me. Please bring your questions that cannot be answered online to class each Tuesday and Thursday.

Writing Lab

Students are encouraged to make use of the Olympic College Writing Center.  The Writing Center is located in the new Humanities and Student Services Building, Room 312, open from 9 – 5 Monday & Tuesday, and 9 – 2 Wednesday – Friday.  Students are encouraged to make appointments, but may also drop in.  The phone # is 475-7318.

Special Accommodations:

If you have a disability and will need special services, please call or visit Access Services as soon as possible. They are in the new Humanities and Student Services Building (HSS), Room 204 (360) 475-7540.

Can I Help?

I want you to do well in this class and in college. If you have a problem or situation that is affecting your schoolwork, please let me know. Olympic College has many services to help students be successful. You can contact me by e-mail, instant message (IM), voice mail, or talk to me right before or after class.





Instructor Information –

Name: Kevin Blackwell

MSN Messenger: Kevin_Blackwell@msn.com

(There is an “underscore” character between my first and last name)

Phone: (W) 360-475-7379

Instructor Office Hours:

Mondays and Wednesdays 10:00 A.M. – 12:00 Noon (T-215)

Online (via Blackboard Collaborate), By Arrangement Only




Olympic College 1600 Chester Ave Bremerton WA 98337-1699