Как-то раз мне нужно было довольно много текста обработать по регулярным выражениям. Решил использовать для этого программу Notepad++. В ней поиск и замена поддерживают использование масок, спецсимволов и регулярок. Ниже приведен мануальчик по регулярным выражениям. Тога на инглише.
Regular expressions can be used for searching for patterns rather than literals. For example, it is possible to search for variables in SciTE property files, which look like $(name.subname) with the regular expression:
\$([a-z.]+)
(or \$\([a-z.]+\)
in posix mode).
Replacement with regular expressions allows complex transformations with the use of tagged expressions. For example, pairs of numbers separated by a ‘,’ could be reordered by replacing the regular expression:
\([0-9]+\),\([0-9]+\)
(or ([0-9]+),([0-9]+)
in posix mode, or even (\d+),(\d+)
)
with:
\2,\1
Regular expression syntax depends on a parameter: find.replace.regexp.posix
If set to 0, syntax uses the old Unix style where \(
and \)
mark capturing sections while (
and )
are themselves.
If set to 1, syntax uses the more common style where (
and )
mark capturing sections while \(
and \)
are plain parentheses.
. \ [ ] * + ? ^ $
and ( )
in posix mode. .
\
\a
, \b
, \f
, \n
, \r
, \t
, \v
match the corresponding C escape char, respectively BEL, BS, FF, LF, CR, TAB and VT;\r
and \n
are never matched because in Scintilla, regular expression searches are made line per line (stripped of end-of-line chars).Backslash is used as an escape character for all other meta-characters, and itself.
[
set]
^
, it matches the characters NOT in the set, i.e. complements the set. A shorthand S-E
(start dash end) is used to specify a set of characters S up to E, inclusive. The special characters ]
and -
have no special meaning if they appear as the first chars in the set. To include both, put – first: [-]A-Z]
(or just backslash them).
example | match |
[-]|] |
matches these 3 chars, |
[]-|] |
matches from ] to | chars |
[a-z] |
any lowercase alpha |
[^-]] |
any char except – and ] |
[^A-Z] |
any char except uppercase alpha |
[a-zA-Z] |
any alpha |
*
*
) matches zero or more matches of that form. +
?
) in which case both [5] and [6] try to match as little as possible. ?
\(form\)
(or (form)
with posix flag) matches what form matches. The enclosure creates a set of tags, used for [9] and for pattern substitution. The tagged forms are numbered starting from 1. \
followed by a digit 1 to 9 matches whatever a previously tagged regular expression ([8]) matched. \< \>
\<
construct and/or ending with a \>
construct, restricts the pattern matching to the beginning of a word, and/or the end of a word. A word is defined to be a character string beginning and/or ending with the characters A-Z a-z 0-9 and _. Scintilla extends this definition by user setting. The word must also be preceded and/or followed by any character outside those mentioned. \l
\xHH
^ $
Most of this documentation was originally written by Ozan S. Yigit.
Additions by Neil Hodgson and Philippe Lhoste.
All of this document is in the public domain.
The only problem – many regexp features described here do not work in Notepad++:
https://sourceforge.net/tracker/index.php?func=detail&aid=1185698&group_id=95717&atid=612385
тоесть, вместо изучения регулярок начинаем переучивать ин.яз на инглиш и возвращаемся к этой статье в лучшем случае через полгода?
а нет русской статьи и то ничего не понимаю. а регулярные выражения нужны оооочснеь!
“начинаем переучивать ин.яз на инглиш ” –
скажем дружно – на**уй нужно
Примерно то-же но на русском
https://vdasus.com/2010/06/15/regulyarnye-vyrazheniya-dlya-samyh-nachinayuschih/
чё блин одни русские интересуются регэкспами?
Народ, программистом не может быть человек не знающий английского языка хотя бы на уровне чтения мануалов. Во первых самые интересные и полезные инструкции чаще выходят на английском, во вторых сами языки программирования, если не считать 1С :) являются переработанным инглишем.. if else while do – это всё иностранные слова. Учите английский обязательно, всё таки универсальный международный язык.
2Ivan/ Согласен, но не панацея. не очень но знаю англ. в основном как раз технические слова. Но читать мануал на английском это через чур. могут пройти мимо нюансы. Так что автор не зачёт. ушёл на другой сайт.