eg-259:homework:9
This is an old revision of the document!
Table of Contents
Text Processing with Regular Expressions
Adapted from: Chapter 4 of Robert W. Sebasta, Programming the World-Wide Web, 3rd Edition, Addison Wesley, 2006. Supporting: Lecture 7.
Write, test and debug (if necessary) XHTML files that include JavaScript scripts for the following problems. When required to write functions, you must include a script to test the function with at least two different data sets.
1. Exercises from the Lecture
- Input: A text string, using
prompt
; Output: either legal name or Illegal name, depending on whether the input string fits the required format, which is: Last name, first name, middle initial where neither of the names can have more than 15 characters. - Input: A text string, using
prompt
; Output: The words of the input text, in alphabetical order - Function:
tst_name
; Parameter: a string; Returns:true
if the given string has the form:string1, string2, letter
where both strings must be all lowercase letters except the first letter, and letter must be uppercase;false
otherwise.
2. Additional Exercises
Try these if you need or want more practice. All exercises are from Chapter 4 of Robert W. Sebasta, Programming the World-Wide Web, 3rd Edition, Addison Wesley, 2006.
- Modify the script for Exercise 1.2 to get a second input from the user, which is either
“ascending”
or“descending”
. Use this input to determine how to sort the input words. - Function:
e_names
; Parameter: An array of names, represented as strings. Returns: The number of names in the given array that end in either“e”
or“y”
. - Function:
first_vowel
; Parameter: A string. Returns: The position in the string of the leftmost vowel. - Function:
reverser
; Parameter: A number. Returns: The number with its digits in reverse order.
3. Practical Exercises
- Copy and paste the following text into the Target window of JRX
The quick brown fox jumped over the lazy dog. Xooo oXoo ooXo oooX ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789 `|\<>,./?#~'@;:[]{}=+-_)(*&^%$£"! 555-789-1234 some.one@swan.ac.uk
Some wiki text with words in //italic// and **bold**. Like //this// or **that**.
- Write regular expressions to match:
- any non-blank line of text.
- any word.
- the telephone number.
“X”
followed by up to two“o”
characters- one or more
“o”
character followed by“X”
- any upper case vowel
- any lowercase consonant
- any punctuation character
- The domain name of the email address.
- The user name of the email address.
- The words in italics in the wiki text.
- Take any (or all) of the example JavaScript programs from the last three lectures and explore them in Firebug using the console, console logger and debugger.
eg-259/homework/9.1295010040.txt.gz · Last modified: 2011/02/22 09:22 (external edit)