|
Маленький вопрос по регулярным выражениям | ☑ | ||
---|---|---|---|---|
0
Сниф
27.10.16
✎
14:32
|
Есть расширение для Google Chrome "Поиск и замена текста". В поле поиска можно ввести регулярное выражение.
Я хочу найти слова, начинающиеся на угло* (угловой, угловые, угловых и т.п.) и заменить их на слово Angular. Как задать регулярное выражение? Если в виде угло*, то находит, но не обрабатывает слово до конца. То есть меняет "уголвых" на "Angularых". |
|||
1
Волшебник
модератор
27.10.16
✎
14:34
|
Сделать N замен
|
|||
2
Timon1405
27.10.16
✎
14:48
|
интересно, как должно отработать слово "гуглофон"
|
|||
3
AceVi
27.10.16
✎
14:54
|
(2) Пропустить конечно же вот если бы было вот так *угло* то заменил бы.
|
|||
4
Сниф
27.10.16
✎
14:58
|
(1) Расширение берет начало в найденном слове и меняет именно найденное начало, а не все слово. Вот в этом проблемка.
|
|||
5
Nuobu
27.10.16
✎
15:02
|
(4) Напиши своё расширение.
|
|||
6
Кирпич
27.10.16
✎
15:04
|
если так?
[уУ]гло[^\s\.,!?;]+ |
|||
7
Кирпич
27.10.16
✎
15:06
|
или так
[\s]?[уУ]гло[^\s\.,!?;]+ |
|||
8
Сниф
27.10.16
✎
15:08
|
(6) Да, отлично, спасибо!
Это я с помощью расширения ImTaranslator перевожу английский тест (перевод вставляется за оригинальным текстом и выделяется цветом). В целом качество хорошее, но некоторые ляпы просто глаз режут. |
|||
9
Сниф
27.10.16
✎
15:11
|
(8) *ImTranslator
|
|||
10
Timon1405
27.10.16
✎
15:21
|
а (6) сработает для "круглосуточный"?
|
|||
11
Сниф
27.10.16
✎
15:42
|
(6) Как это вообще можно запомнить - скобочки, закорючки..
|
|||
12
Волшебник
модератор
27.10.16
✎
15:56
|
(11) Это регулярные выражения, детка
|
|||
13
Кирпич
27.10.16
✎
16:24
|
(10) вот так будет нормально
(?:\s|^)угло[^\s.?,!]+ |
|||
14
Timon1405
27.10.16
✎
16:50
|
(13) В шаблон попадает пробел перед словом, так что строка
"угловой угловой" заменится на AngularAngular ps вместо [^\s.?,!] можно писать [\S] |
|||
15
Кирпич
27.10.16
✎
17:00
|
(14) ну это всё тонкости. у меня [^\s.?,!] и [\S] не одно и то же
|
|||
16
Лефмихалыч
27.10.16
✎
17:35
|
\sугло\w+
|
|||
17
Мойдодыр
27.10.16
✎
18:20
|
\w+ не выделяет до конца строки
|
|||
18
Мойдодыр
27.10.16
✎
18:21
|
||||
19
Сниф
27.10.16
✎
21:28
|
(18) Хороший инструмент
|
|||
20
Лефмихалыч
27.10.16
✎
21:39
|
(17) забыл, что \w с кириллицей не везде дружит.
угло[A-z|А-я|0-9]+ результат обработки через vbscript.regexp: https://i.imgur.com/D72Pb26.png |
|||
21
Кирпич
27.10.16
✎
23:56
|
(20) палки лишние наверное
угло[A-zА-я0-9]+ |
|||
22
Timon1405
28.10.16
✎
09:27
|
20,(21) ну неправильно же! см (6) слово "круглосуточный".
регулярное выражение должно совпадать там где нужно, и не совпадать там где не нужно, а в этом случае выдаст лишнее совпадение, хотя в условии есть фраза "НАЧИНАЮЩИЕСЯ на угло" (13) предлагаю вариант (?<!\w)угло[^\s.?,!]+ |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |