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

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
主站蜘蛛池模板: 天水市| 昌图县| 德惠市| 三原县| 兴文县| 湛江市| 德庆县| 谷城县| 滁州市| 克东县| 彭阳县| 襄樊市| 沙雅县| 始兴县| 黑山县| 前郭尔| 元阳县| 三门县| 囊谦县| 隆回县| 望谟县| 牡丹江市| 南充市| 忻州市| 抚州市| 汉源县| 读书| 舒城县| 清流县| 剑阁县| 尼玛县| 海伦市| 沂源县| 资源县| 丹巴县| 宁阳县| 南靖县| 石门县| 江西省| 和平县| 赤壁市|