Loiane Groner

JavaScript Regular Expressions

Regular expressions are patterns or templates that allow you to define a set of rules in a natural yet vague way, giving you the ability to match and validate text. Therefore, they have been implemented in nearly every modern programming language. JavaScript's implementation allows us to perform complex tasks with a few lines of code using regular expressions to match and extract data out of text.This book starts by exploring what a pattern actually is and how regular expressions express these patterns to match and manipulate user data. You then move on to learning about the use of character classes to define a wild character match, a digit match, and an alphanumeric match. You will then learn to manipulate text and shorten data in URLs, paths, markup, and data exchange, as well as other advanced Regex features.Finally, you will work through real-world examples, both in the browser and on the server side using Node.js.
136 printed pages

Impressions

    Daria Diachkovashared an impressionlast year
    👍Worth reading
    💡Learnt A Lot

Quotes

    Daria Diachkovahas quotedlast year
    This matches one or more occurrences and is equivalent to {1,}.
    /o+/ matches "oo" in "foo".
    ?
    This matches zero or one occurrences and is equivalent to {0,1}.
    /fo?/ matches "fo" in "foo" and matches "f" in "fairy".
    +?
    *?
    "?" can also be used following one of the *, +, ?, or {} quantifiers to make the later match nongreedy, or the minimum number of times versus the default maximum.
    /\d{2,4}?/ matches "12" in the "12345" string, instead of "1234" due to "?" at the end of the quantifier nongreedy.
    x(?=y)
    Positive lookahead: It matches x only if it's followed by y. Note that y is not included as part of the match, acting only as a required condition.
    /Java(?=Script|Hut)/ matches "Java" in "JavaScript" or "JavaHut", but not "JavaLand".
    x(?!y)
    Negative lookahead: It matches x only if it's not followed by y. Note that y is not included as part of the match, acting only as a required condition.
    /^\d+(?! years)/ matches "5" in "5 days" or "5 books", but not "5 years".
    Daria Diachkovahas quotedlast year
    Quantifiers

    In the following table, you can find the patterns for quantifiers, which specify how many instances of a character, group, or character class must be present in an input for a match to be found.
    Pattern
    Description
    Example
    {n}
    This matches exactly n occurrences of a regular expression.
    /\d{5}/ matches "12345" (five digits) in "1234567890".
    {n,}
    This matches n or more occurrences of a regular expression.
    /\d{5,}/ matches "1234567890" (minimum of five digits) in "1234567890".
    Daria Diachkovahas quotedlast year
    Character sets

    In the following table, you can find the patterns for character sets, which tell the Regex to match only one character out of several characters.
    Pattern
    Description
    Example
    [xyz]
    This matches any one character enclosed in the character set. You can use a hyphen to denote the range. For example, /[a-z]/ matches any letter in the alphabet and matches /[0-9]/ to any single digit.
    /[ao]/ matches "a" in "bar"
    [^xyz]
    This matches any one character, which is not enclosed in the character set.
    /[^ao]/ matches "b" in "bar"

On the bookshelves

    Stevan Stanisic
    DevBooks
    • 6
    juan fernandez
    Progra
    • 4
fb2epub
Drag & drop your files (not more than 5 at once)