官术网_书友最值得收藏!

The basic rules of regular expressions

Many of you are familiar with wild cards (in the Unix world, it is called glob pattern) matching of text. Here:

  • ? matches any single character
  • * matches any sequence of characters
  • [abc] matches any one character inside square brackets, so it will match a, b, or c

The regular expression pattern goes many steps farther than wild cards, where one can set many rules in a regex pattern, such as the following:

  • Match a character or a group of characters optionally (0 or 1 times)
  • Use quantifiers in regex patterns to match variable length text
  • Use a character class to match one of the listed characters or match a range of characters
  • Use a negated character class to match any character except those matched by the character class
  • Match only certain character categories, such as match only digits, only upper case letters, or only punctuation characters
  • Match a character or a group of characters for a specific length.
  • Match a length range, such as allow only six to 10 digits in the input or match an input of a minimum of eight characters
  • Use Boolean "OR" in an alternation to match one of the few alternative options
  • Use groups in regex patterns and capture substrings that we want to extract or replace from a given input
  • Alter the behavior of matching by keeping it greedy (eager), lazy (reluctant), or possessive
  • Use back references and forward references of groups that we capture
  • Use zero-width assertions such as the following:
    • Start and end anchors
    • Word boundary
    • Lookahead and lookbehind assertions
    • Start a match from the end of a previous match

For example, in a regex to match a or b we can use the following alternation:

a|b

To match one or more instances of the digit 5, we can use the following:

5+

To match any substring that starts with p and ends with w, we can use the following:

p.*w
主站蜘蛛池模板: 尉氏县| 云南省| 蛟河市| 金乡县| 景德镇市| 梁山县| 教育| 宾川县| 河曲县| 石首市| 自贡市| 罗城| 富民县| 阳山县| 湖州市| 余庆县| 丰县| 申扎县| 家居| 张家界市| 同德县| 颍上县| 奉化市| 陇川县| 开远市| 买车| 商南县| 湖州市| 延长县| 陇川县| 南投县| 郑州市| 南木林县| 沧州市| 灵璧县| 垦利县| 开原市| 太湖县| 腾冲县| 辽阳县| 安泽县|