Вход | Регистрация


Информационные технологии :: Математика и алгоритмы

Маленький вопрос по регулярным выражениям

Маленький вопрос по регулярным выражениям
Я
   Сниф
 
27.10.16 - 14:32
Есть расширение для Google Chrome "Поиск и замена текста". В поле поиска можно ввести регулярное выражение.

Я хочу найти слова, начинающиеся на угло* (угловой, угловые, угловых и т.п.) и заменить их на слово Angular.  Как задать регулярное выражение?

Если в виде угло*, то находит, но не обрабатывает слово до конца. То есть меняет "уголвых" на "Angularых".
 
 
   Волшебник
 
Модератор
1 - 27.10.16 - 14:34
Сделать N замен
   Timon1405
 
2 - 27.10.16 - 14:48
интересно, как должно отработать слово "гуглофон"
   AceVi
 
3 - 27.10.16 - 14:54
(2) Пропустить конечно же вот если бы было вот так *угло* то заменил бы.
   Сниф
 
4 - 27.10.16 - 14:58
(1) Расширение берет начало в найденном слове и меняет именно найденное начало, а не все слово. Вот в этом проблемка.
   Nuobu
 
5 - 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
   Timon1405
 
10 - 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.?,!]+
   Timon1405
 
14 - 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]+
   Timon1405
 
22 - 28.10.16 - 09:27
20,(21) ну неправильно же! см (6) слово "круглосуточный".
регулярное выражение должно совпадать там где нужно, и не совпадать там где не нужно, а в этом случае выдаст лишнее совпадение, хотя в условии есть фраза "НАЧИНАЮЩИЕСЯ на угло"
(13) предлагаю вариант (?<!\w)угло[^\s.?,!]+


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует