- Java 9 Regular Expressions
- Anubhava Srivastava
- 326字
- 2021-07-02 18:58:33
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
推薦閱讀
- Microsoft Exchange Server PowerShell Cookbook(Third Edition)
- Kinect for Windows SDK Programming Guide
- PostgreSQL Replication(Second Edition)
- MATLAB 2020從入門到精通
- Java Fundamentals
- Spring Boot+MVC實戰指南
- Essential C++(中文版)
- Access 2010數據庫應用技術實驗指導與習題選解(第2版)
- 數據科學中的實用統計學(第2版)
- C語言程序設計實驗指導
- Python Django Web從入門到項目實戰(視頻版)
- Roslyn Cookbook
- Swift編程實戰:iOS應用開發實例及完整解決方案
- R High Performance Programming
- C語言從入門到精通(第4版)