mirror of
https://github.com/m-lamonaca/dev-notes.git
synced 2025-04-05 02:16:42 +00:00
Translate to english regex notes
This commit is contained in:
parent
a2385fbff5
commit
f4aaec9e32
1 changed files with 45 additions and 47 deletions
|
@ -1,67 +1,65 @@
|
|||
# Common Regex Syntax
|
||||
|
||||
## Classi Di Caratteri
|
||||
## Character Types
|
||||
|
||||
`\d` qualsiasi cifra (0-9)
|
||||
`\D` qualsiasi carattere non cifra
|
||||
`\s` spazio bianco (space, tab, new line)
|
||||
`\S` qualsiasi carattere non spazio binaco
|
||||
`\w` qualsiasi carattere alfanumerico(a-z, A-Z)
|
||||
`\W` qualsiasi carattere non alfanumerico
|
||||
`\b` spazio intorno alle parole (solo inizio o fine stringa)
|
||||
`\B` spazio intorno alle parole (solo se all'interno della stringa, no ad inizio o fine)
|
||||
`\A` ricerca solo all'inizio della stringa
|
||||
`\Z` ricerca solo al fondo della stringa
|
||||
`.` tutti i caratteri tranne linea nuova (CRLF)
|
||||
`\d` any digit (0-9)
|
||||
`\D` any non digit character
|
||||
`\s` whitespace (space, tab, new line)
|
||||
`\S` any non whitespace charaters
|
||||
`\w` any alphanumeric charater (a-z, A-Z)
|
||||
`\W` any non alphanumeric character
|
||||
`\b` whitespace surrounding words (only at row start or end)
|
||||
`\B` whitespace surrounding words (not at row start or end)
|
||||
`\A` search only at string start
|
||||
`\Z` search only at string end
|
||||
`.` any charaters but newline (CRLF, CR, LF)
|
||||
|
||||
## Quantificatori
|
||||
## Quantifiers
|
||||
|
||||
`+` una o più ripetizioni
|
||||
`*` zero o più ripetizioni
|
||||
`?` zero o una ripetizione
|
||||
`{m}` esattamente *m* volte
|
||||
`{m, n}` minimo *m* volte massimo *n* volte
|
||||
`+` one or more repetitions
|
||||
`*` zero or more repetitions
|
||||
`?` zero or one repetition
|
||||
`{m}` exactly *m* times
|
||||
`{m, n}` at least *m* times, at most *n* times
|
||||
|
||||
The `*`, `x`, and `?` qualifiers are all greedy; they match as much text as possible
|
||||
Adding `?` *after* the qualifier makes it perform the match in non-greedy or minimal fashion; as few characters as possible will be matched.
|
||||
|
||||
## Caratteri Speciali
|
||||
## Special Characters
|
||||
|
||||
`\a, \b, \f, \n, \r, \t, \u, \U, \v, \x, \\, \?, \*, \+ , \., \^, \$` caratteri speciali
|
||||
`\(`, `\)` escape delle parentesi nella stringa
|
||||
`\a, \b, \f, \n, \r, \t, \u, \U, \v, \x, \\, \?, \*, \+ , \., \^, \$` special characters
|
||||
`\(`, `\)`, `\[`, `\]` brackets escaping
|
||||
|
||||
## Delimitatori
|
||||
## Delimiters
|
||||
|
||||
`^` cerca corrispondenza ad inizio stringa o linea
|
||||
`$` cerca corrispondenza a fondo stringa o linea
|
||||
`^__$` corrispondenza deve essere l'intera stringa
|
||||
`^` match must be at start of string/line
|
||||
`$` match must be at end of string/line
|
||||
`^__$` match must be whole string
|
||||
|
||||
## Classi Caratteri
|
||||
## Character classes
|
||||
|
||||
`[__]` un carattere tra quelli nella classe (`[ab]` --> a or b)
|
||||
`[__]{m , n}` caratteri consecutivi tra quelli nella classe (`[aeiou]{2}` --> ae, ao, ...)
|
||||
`[a-z]` sequenza di caratteri minuscoli
|
||||
`[A-Z]` sequenza di caratteri maiuscoli
|
||||
`[a-zA-Z]` sequenza di carateri minuscoli o maiuscoli
|
||||
`[a-z][A-Z]` equenza di caratteri miuscoli seguiti da sequenza di caratteri maiuscoli
|
||||
`[^__]` tutto tranne quello nella classe (**attenzione**: includere `\n` per evitare di includere linee multiple di testo)
|
||||
`[__]` one of the charaters in the class (`[ab]` --> a or b)
|
||||
`[__]{m , n}` consecutive characters in the class (`[aeiou]{2}` --> ae, ao, ...)
|
||||
`[a-z]` sequence of lowercase characters
|
||||
`[A-Z]` sequence of uppercase characters
|
||||
`[a-zA-Z]` sequence of lowercase or uppercase characters
|
||||
`[a-z][A-Z]` sequence of lowercase characters followed by sequence of uppercase charaters
|
||||
`[^__]` anything but the elements of the class (include `\n` to avoid matching line endings)
|
||||
|
||||
GLi unici simboli con effetto nelle classi di caratteri sono `^`, `\`, `-` e `]`.
|
||||
Per essere usati devono essere usati come escape: `[\]\[\^\-]`
|
||||
`^`, `\`, `-` and `]` must be escaped to be used in clases: `[ \]\[\^\- ]`
|
||||
|
||||
## Gruppi
|
||||
## Groups
|
||||
|
||||
`(__)` sottogruppo della REGEX, utile per raggruppare parti della REGEX
|
||||
`(REGEX_1 | REGEX_2)` cerca corrispondenza di REGEX multiple (R1 OR R2)
|
||||
`(?#__)` cerca commenti
|
||||
`(?=__)` corrisponde solo se `__` è prossima substringa
|
||||
`(?!__)` corrisponde solo se `__` non è prossima substringa
|
||||
`(?<=__)` corrisponde se `__` è substringa precedente
|
||||
`(?<!__)` corrisponde solo se `__` non è substringa precedente
|
||||
`(__)` REGEX subgroup
|
||||
`(REGEX_1 | REGEX_2)` match in multiple regex (R1 OR R2)
|
||||
`(?=__)` match only if `__` is next substring
|
||||
`(?!__)` match only if `__` is not next substring
|
||||
`(?<=__)` match only if `__` is previous substring
|
||||
`(?<!__)` match only if `__` is not previous substring
|
||||
|
||||
`\<number>` fa riferimento all'n-esimo gruppo.
|
||||
`\<number>` refers to n-th group
|
||||
|
||||
## Casi Particolari
|
||||
## Special Cases
|
||||
|
||||
`(.*)` corrisponde con qualsiasi cosa
|
||||
`(.*?)` corrisponde con qualsiasi cosa, non-greedy match
|
||||
`(.*)` match anything
|
||||
`(.*?)` match anything, non-greedy match
|
||||
|
|
Loading…
Add table
Reference in a new issue