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

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
主站蜘蛛池模板: 临沂市| 渭源县| 枣阳市| 新竹县| 和林格尔县| 梅州市| 原阳县| 城口县| 普格县| 九江县| 佳木斯市| 弥渡县| 临沭县| 桦川县| 桑日县| 永州市| 鲁山县| 朝阳市| 城市| 吴堡县| 崇义县| 墨江| 汝城县| 循化| 安西县| 南宁市| 大英县| 宁津县| 和政县| 交城县| 武穴市| 忻州市| 新密市| 宁南县| 翼城县| 杨浦区| 临城县| 乾安县| 永兴县| 东山县| 阳新县|