mirror of
https://github.com/cheatsnake/backend-cheats.git
synced 2024-09-11 11:57:33 +03:00
updated regex cheatsheet
This commit is contained in:
parent
bf1b11df43
commit
23c9fbb8b0
@ -16,10 +16,10 @@
|
||||
|
||||
Флаги влияют на результат поиска. Их всего 5 штук:
|
||||
|
||||
- `i` – позволяет игнорировать регистры букв (нет разницы между *A* и *a*).
|
||||
- `i` – позволяет игнорировать регистры букв (нет разницы между *A* и *a*).
|
||||
- `g` – позволяет искать все совпадения в тексте, без него – только первое.
|
||||
- `m` – включение многострочного режима (влияет только на поведение `^` и `$`).
|
||||
- `s` – текст трактуется как одна строка, в этом случае метасимволу `.` (точка) соответствует любой одиночный символ, включая символ новой строки.
|
||||
- `m` – включение многострочного режима (влияет только на поведение `^` и `$`).
|
||||
- `s` – текст трактуется как одна строка, в этом случае метасимволу `.` (точка) соответствует любой одиночный символ, включая символ новой строки.
|
||||
- `u` – unicode-трактовка. Выражение может содержать специальные паттерны, характерные для юникода.
|
||||
|
||||
## Специальные конструкции
|
||||
@ -29,45 +29,97 @@
|
||||
На месте точки может быть любой символ. Количеством точек можно определять длину слов.
|
||||
|
||||
```js
|
||||
/t..k/g;
|
||||
/t..k/g
|
||||
```
|
||||
|
||||
_take look team <ins>took</ins> hike track <ins>teak</ins> time_
|
||||
> take look team <ins>took</ins> hike track <ins>teak</ins> time
|
||||
|
||||
#### Перечень `[]`
|
||||
|
||||
Позволяют указать определенный перечень символов.
|
||||
|
||||
```js
|
||||
/t[aoi]k/g;
|
||||
/t[aoi]k/g
|
||||
```
|
||||
|
||||
_tek <ins>tok</ins> tdk <ins>tak</ins> <ins>tik</ins> tuk tyk took taoik_
|
||||
> tek <ins>tok</ins> tdk <ins>tak</ins> <ins>tik</ins> tuk tyk took taoik
|
||||
|
||||
#### Исключающий перечень `[^]`
|
||||
|
||||
Позволяет исключить определенный набор символ из поиска, используется вместе с квадратными скобками.
|
||||
|
||||
```js
|
||||
/ba[^td]/g;
|
||||
/ba[^td]/g
|
||||
```
|
||||
|
||||
_<ins>ban</ins> <ins>bag</ins> bat <ins>bas</ins> bad_
|
||||
> <ins>ban</ins> <ins>bag</ins> bat <ins>bas</ins> bad
|
||||
|
||||
#### Диапазон `[-]`
|
||||
|
||||
Указывает диапазон с первого по последний символ (включительно) в алфавитном порядке.
|
||||
|
||||
```js
|
||||
/[a-d]../g;
|
||||
/[a-d]../g
|
||||
```
|
||||
|
||||
_ost hst <ins>ast</ins> fst <ins>cst</ins> <ins>bst</ins>_
|
||||
> ost hst <ins>ast</ins> fst <ins>cst</ins> <ins>bst</ins>
|
||||
|
||||
Аналогично работает с цифрами:
|
||||
|
||||
```js
|
||||
/201[5-9]/g;
|
||||
/201[5-9]/g
|
||||
```
|
||||
|
||||
_2010 2012 <ins>2015</ins> <ins>2017</ins> <ins>2019</ins> 2022_
|
||||
> 2010 2012 <ins>2015</ins> <ins>2017</ins> <ins>2019</ins> 2022
|
||||
|
||||
#### Повторения `*`
|
||||
|
||||
Звездочка после символа указывает, что данный символ может отсутствовать, либо совпадать один или более раз.
|
||||
|
||||
```js
|
||||
/wo*w/g
|
||||
```
|
||||
|
||||
> <ins>wow</ins> waw wiw <ins>woooow</ins> wawe <ins>ww</ins> <ins>woow</ins>
|
||||
|
||||
#### Повторения `+`
|
||||
|
||||
Плюс после символа указывает, что данный символ должен присутствовать один или более раз.
|
||||
|
||||
```js
|
||||
/go+gle/g
|
||||
```
|
||||
|
||||
> <ins>google</ins> ggle <ins>gogle</ins> gugle g00gle <ins>goooogle</ins>
|
||||
|
||||
#### Необязательный символ `?`
|
||||
|
||||
Вопросительный знак после символа указывает, что данный символ является не обязательным (может либо отсутствовать, либо встрачаться только один раз).
|
||||
|
||||
```js
|
||||
/bou?nd/g
|
||||
```
|
||||
|
||||
> <ins>bond</ins> <ins>bound</ins> bouuund boynd
|
||||
|
||||
#### Количество повторений `{}`
|
||||
|
||||
Чтобы указать точное количетво повторений, необходимо после символа записать фигурные скобки с нужным числом.
|
||||
|
||||
```js
|
||||
/bo{3}m/g
|
||||
```
|
||||
|
||||
> boom bom <ins>booom</ins> bm boooom
|
||||
|
||||
#### Диапазон повторений `{,}`
|
||||
|
||||
Чтобы указать диапазон повторений, необходимо после символа записать фигурный скобки с нужным диапазоном разделенным запятой.
|
||||
|
||||
```js
|
||||
/lo{2,4}k/g
|
||||
```
|
||||
|
||||
> lok <ins>look</ins> lk <ins>loook</ins> <ins>looook</ins> loooooook
|
||||
|
||||
Верхнюю границу можно опускать. Например, запись `a{3,}` говорит о том, что символ _a_ должен втречаться не менее трёх раз.
|
Loading…
Reference in New Issue
Block a user