JavaScript(Regular Expression)

Post on 23-Aug-2014

23 views 2 download

Tags:

Transcript of JavaScript(Regular Expression)

JavaScript (Regular Expressions)

Erick Kurniawan, S.Kom

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;

Flags dalam Regular Expressions

Multiline matching.M

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

G

Case-insensitive.IMeaningCharacter

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

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

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

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 *

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/;

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

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?

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/;

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

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