Regular Expressions Nils Murrugarra [email protected].
-
Upload
shonda-roberts -
Category
Documents
-
view
214 -
download
2
Transcript of Regular Expressions Nils Murrugarra [email protected].
![Page 2: Regular Expressions Nils Murrugarra nineil.cs@gmail.com.](https://reader036.fdocuments.us/reader036/viewer/2022083005/56649f265503460f94c3caf3/html5/thumbnails/2.jpg)
2
Exercise 1• Write a regular expression that will match a time/clock
hh:mm:ss pattern.
Examples: • "00:00:15" is valid• "0:56:25" is not valid• “11:15:09" is valid• "15:96:22" is not valid
Solution: /([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])/
Solving …
Solution2: /([01]\d|2[0-3]):([0-5]\d):([0-5]\d)/
![Page 3: Regular Expressions Nils Murrugarra nineil.cs@gmail.com.](https://reader036.fdocuments.us/reader036/viewer/2022083005/56649f265503460f94c3caf3/html5/thumbnails/3.jpg)
3
Exercise 1 - Solution// time
echo "Example Time <br>";
$subject="00:00:15 0:56:25 95:00:25 11:15:09 15:96:22 20:15:10 ";
$pattern = "/([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])/";
if (preg_match_all($pattern, $subject, $result, PREG_OFFSET_CAPTURE)):
echo "$pattern was found: \n";
print_r($result);
nl();
endif;
![Page 4: Regular Expressions Nils Murrugarra nineil.cs@gmail.com.](https://reader036.fdocuments.us/reader036/viewer/2022083005/56649f265503460f94c3caf3/html5/thumbnails/4.jpg)
4
Exercise 1 - Solution
Time Accept?
00:00:15 Yes
0:56:25 No
95:00:25 No
11:15:09 Yes
15:96:22 No
20:15:10 Yes
Run Program … Click
![Page 5: Regular Expressions Nils Murrugarra nineil.cs@gmail.com.](https://reader036.fdocuments.us/reader036/viewer/2022083005/56649f265503460f94c3caf3/html5/thumbnails/5.jpg)
5
Exercise 1 - Report/AnswersArray ( [0] => Array (
[0] => Array ( [0] => 00:00:15 [1] => 0 )
[1] => Array ( [0] => 11:15:09 [1] => 26 )
[2] => Array ( [0] => 20:15:10 [1] => 44 )
)
[1] => Array (
[0] => Array ( [0] => 00 [1] => 0 )
[1] => Array ( [0] => 11 [1] => 26 )
[2] => Array ( [0] => 20 [1] => 44 )
)
[2] => Array (
[0] => Array ( [0] => 00 [1] => 3 )
[1] => Array ( [0] => 15 [1] => 29 )
[2] => Array ( [0] => 15 [1] => 47 )
)
[3] => Array (
[0] => Array ( [0] => 15 [1] => 6 )
[1] => Array ( [0] => 09 [1] => 32 )
[2] => Array ( [0] => 10 [1] => 50 )
)
)
![Page 6: Regular Expressions Nils Murrugarra nineil.cs@gmail.com.](https://reader036.fdocuments.us/reader036/viewer/2022083005/56649f265503460f94c3caf3/html5/thumbnails/6.jpg)
6
Exercise 2• Write a regular expression that will match a zip code. The
zip pattern may be like "16059" or the expanded form of "15221-2397". If there is a dash after the 5 digits then there must follow exactly 4 digits.
Examples: • "15221-abcd " is not valid• "12345 " is valid• “12345-1234" is valid• “12345-123“ is not valid
Solution: /\d{5}(-\d{4})?/
Solving …
![Page 7: Regular Expressions Nils Murrugarra nineil.cs@gmail.com.](https://reader036.fdocuments.us/reader036/viewer/2022083005/56649f265503460f94c3caf3/html5/thumbnails/7.jpg)
7
Exercise 2 - Solution//zip code
echo "Example Zip-code <br>";
$subject="15221-abcd 12345 12345-123 12345-1234 1235 54263 54263-4321";
$pattern = "/\d{5}(-\d{4})?/";
if (preg_match_all($pattern, $subject, $result, PREG_OFFSET_CAPTURE)):
echo "$pattern was found: \n";
print_r($result);
nl();
endif;
![Page 8: Regular Expressions Nils Murrugarra nineil.cs@gmail.com.](https://reader036.fdocuments.us/reader036/viewer/2022083005/56649f265503460f94c3caf3/html5/thumbnails/8.jpg)
8
Exercise 2 - Solution
Zip Code Accept?
15221-abcd No
12345 Yes
12345-123 No
12345-1234 Yes
1235 No
54263 Yes
54263-4321 Yes
Run Program … Click
![Page 9: Regular Expressions Nils Murrugarra nineil.cs@gmail.com.](https://reader036.fdocuments.us/reader036/viewer/2022083005/56649f265503460f94c3caf3/html5/thumbnails/9.jpg)
9
Exercise 2 – Report/AnswersArray ( [0] => Array (
[0] => Array ( [0] => 15221 [1] => 0 )
[1] => Array ( [0] => 12345 [1] => 11 )
[2] => Array ( [0] => 12345 [1] => 17 )
[3] => Array ( [0] => 12345-1234 [1] => 27 )
[4] => Array ( [0] => 54263 [1] => 43 )
[5] => Array ( [0] => 54263-4321 [1] => 49 )
)
[1] => Array (
[0] =>
[1] =>
[2] =>
[3] => Array ( [0] => -1234 [1] => 32 )
[4] =>
[5] => Array ( [0] => -4321 [1] => 54 )
)
)
![Page 10: Regular Expressions Nils Murrugarra nineil.cs@gmail.com.](https://reader036.fdocuments.us/reader036/viewer/2022083005/56649f265503460f94c3caf3/html5/thumbnails/10.jpg)
10
Questions