javascript(regular expression)

13
JavaScript (Regular Expressions) Erick Kurniawan, S.Kom

Upload: ngo-tuan-anh

Post on 23-Aug-2014

27 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: JavaScript(Regular Expression)

JavaScript (Regular Expressions)

Erick Kurniawan, S.Kom

Page 2: JavaScript(Regular Expression)

Regular Expressions

Diperkenalkan pada javascript versi 1.2Menggunakan RegExp objectDigunakan untuk mengecek inputan user (argumen yang diinputkan user)Syntax dari regular expressions biasanya diapit“/” dan “/”Contoh

var pattern = /http/;

var patternIgnoringCase = /http/i;

Page 3: JavaScript(Regular Expression)

Flags dalam Regular Expressions

Multiline matching.M

Global match. Finds all matches in the string, rather than just the first.

G

Case-insensitive.IMeaningCharacter

Page 4: JavaScript(Regular Expression)

Regular ExpressionsDapat dibuat dengan menggunakan RegExp() konstruktorContoh 1:

var pattern = new RegExp("http"); var patternIgnoringCase = new RegExp("http", "i");

Method yang biasa digunakan adalah test()Contoh 2:

var pattern = new RegExp("http");pattern.test("HTTP://WWW.W3C.ORG/");//return false regex1.html

Page 5: JavaScript(Regular Expression)

Regular Expressions

Contoh 3:var patternIgnoringCase = new RegExp("http", "i");patternIgnoringCase.test("HTTP://WWW.W3C.ORG/"); //return true regex2.html

Contoh 3:var pattern = /^http$/; pattern.test("HTTP://WWW.W3C.ORG/");//return false

Page 6: JavaScript(Regular Expression)

Regular Expression Escape Codes

Period .\. Period .

Backslash \\\ Backslash \

Foreslash /\/ Foreslash /Vertical tab\v Vertical tab Tab\t Tab

Carriage return\r Carriage return Newline\n NewlineForm feed\fMatchesCode

Page 7: JavaScript(Regular Expression)

Regular Expression Escape Codes

Right bracket ]\] Right bracket ]Left bracket [\[ Left bracket [

Right parenthesis )\) Right parenthesis )

Left parenthesis (\( Left parenthesis (

Horizontal bar, aka Pipe |\| Horizontal bar, aka Pipe |Question mark ?\? Question mark ?Plus sign +\+ Plus sign +Asterisk *\* Asterisk *

Page 8: JavaScript(Regular Expression)

Regular Expressions

Contoh (untuk alamat website):var pattern = /http:\/\/www\.w3c\.org\//;

Repetition Quantifiers var pattern = /ab?c/;var pattern = /ab{5}c/;

var pattern = /abbbbbc/;var pattern = /ab{5,7}c/;var pattern = /ab{3,}c/;

Page 9: JavaScript(Regular Expression)

Repetition Quantifiers

Match previous item exactly m times.{m}Match previous item m or more times.{m, }

Match previous item at minimum m times, but no more than n times.

{m, n}Match previous item zero or one times.?Match previous item one time or more.+Match previous item zero or more times.*MeaningCharacter

Page 10: JavaScript(Regular Expression)

Regular Expressions

Groupingvar pattern = /a(bc)+/;var pattern = /(very){3,5} hot/;

Character Classesvar pattern = /[pbm]ill/;var pattern = /[1234567890]+/; var pattern = /[0-9]+/; var pattern = /[a-z]/;var pattern = /[a-zA-Z0-9]/;var pattern = /^[a-z][a-z0-9_-]*/i; //untukno telp?

Page 11: JavaScript(Regular Expression)

Regular Expressions

Grouping (Not)var pattern = /[^a-zA-Z]+/;

Common Character Classes var pattern = /abc..d/;var pattern = /^\d{3}-\d{3}-\d{4}$/;

Alternatives var pattern = /^(http|ftp|https)/;var pattern = /(James|Jim|Charlie) Brown/;

Page 12: JavaScript(Regular Expression)

Character Classes

A backspace character.[\b]

A word non-boundary. The empty “space” between word characters.

\BA word boundary. The empty “space” between a \w and \W.\bAny non-digit. Same as [^0-9].\DAny digit. Same as [0-9].\dAny non-whitespace character. Same as [^ \t\n\r\f\v].\SAny whitespace character. Same as [ \t\n\r\f\v].\sAny non-word character. Same as [^a-zA-Z0-9_].\WAny word character. Same as [a-zA-Z0-9_].\wAny character except newline..

Any one character not between the brackets represented explicitly or as a range.

[^chars]

Any one character indicated either explicitly or as a range between the brackets.

[chars]

MeaningCharacter

Page 13: JavaScript(Regular Expression)

Examples

abc.44.55.42128.22.45.

128.22.45.1/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/

attention, tensile, often

ten/\bten\b/ten, 1ten aten1/\wten\w/ten, tentsten /\Wten\W/Does Not MatchMatchesRegular Expression