AkelPad Forum Index AkelPad
Support forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Регулярные выражения
Goto page Previous  1, 2, 3, 4, 5, 6 ... 20, 21, 22  Next
 
Post new topic   Reply to topic    AkelPad Forum Index -> Discussion (Russian)
View previous topic :: View next topic  
Author Message
Serge Yolkin



Joined: 27 Jul 2010
Posts: 272

PostPosted: Sat Nov 02, 2013 8:07 am    Post subject: Reply with quote

Quote:
А у Вас разве правила из секции QuotesRE не перебивают остальные
Нет. Если с обычными квотесами пересекаются - не работают ни те, ни другие, а у фолдсов приоритет выше
Code:
Folds:
513   3   #808080   0   `/*`   `*/`   ``
перебивает
Code:
QuotesRE:
4   `\&[A-Za-z]+;`   `\0=(1,#FF3399,0)`
4   `\&#x?\w+;`   `\0=(1,#FF3399,0)`
полюбому. Это для HTML.
Back to top
View user's profile Send private message
Drugmix



Joined: 08 Apr 2013
Posts: 444

PostPosted: Sat Nov 02, 2013 3:14 pm    Post subject: Reply with quote

гм, сейчас заметил, что по ссылке на тестовую версию - есть другая, от 21-ого числа, о которой Instructor тут не упоминал.
Но в ней у меня всё то же самое.
На всякий случай:
https://dl.dropboxusercontent.com/u/11652751/AkelPad.test.7z
Back to top
View user's profile Send private message
opk44



Joined: 16 Jan 2010
Posts: 344

PostPosted: Sat Nov 02, 2013 8:16 pm    Post subject: Reply with quote

Drugmix
У вас в реальном ahk.coder криво цвет закодирован (в "Folds:"). Вместо #808080 записано $808080. Оттого оно и не работает.
Back to top
View user's profile Send private message
Drugmix



Joined: 08 Apr 2013
Posts: 444

PostPosted: Sat Nov 02, 2013 8:37 pm    Post subject: Reply with quote

opk44
ой, это я пытался сменить с ${COMM} на #808080 как у Serge Yolkin.
Исправил на #808080 - на результат это не повлияло.
Back to top
View user's profile Send private message
opk44



Joined: 16 Jan 2010
Posts: 344

PostPosted: Sat Nov 02, 2013 8:48 pm    Post subject: Reply with quote

Drugmix wrote:
Исправил на #808080 - на результат это не повлияло.
Чтобы повлияло нужно редактор переоткрыть. И еще. Поскольку в архиве нет ini-шников, я не уверен куда у вас пишутся настройки. Я перед экспериментами установил опцию "Save settings INI file". Это конечно "антинаучно", но попробуйте и вы поменять способ хранения на INI файл, а заодно и cache удалите насильно.
Back to top
View user's profile Send private message
Drugmix



Joined: 08 Apr 2013
Posts: 444

PostPosted: Sat Nov 02, 2013 8:58 pm    Post subject: Reply with quote

opk44 wrote:
Чтобы повлияло нужно редактор переоткрыть. И еще.

Я так и делал.
opk44 wrote:
Поскольку в архиве нет ini-шников, я не уверен куда у вас пишутся настройки. Я перед экспериментами установил опцию "Save settings INI file". Это конечно "антинаучно", но попробуйте и вы поменять способ хранения на INI файл, а заодно и cache удалите насильно.

Спасибо, сохранение настроек в INI - помогло. А как cache удалять?
Back to top
View user's profile Send private message
opk44



Joined: 16 Jan 2010
Posts: 344

PostPosted: Sat Nov 02, 2013 9:14 pm    Post subject: Reply with quote

Drugmix wrote:
А как cache удалять?
Имеется в виду не некий общесистемный кэш или там файл подкачки, а совершенно конкретный cache от Coder-плагина.
В вашем архиве ему соответствует (AkelPad.test.7z)\AkelPad.test\AkelFiles\Plugs\Coder\cache
Удаляется как и любой другой файл с диска. Перед удалением AkelPad закрыть.
Back to top
View user's profile Send private message
Drugmix



Joined: 08 Apr 2013
Posts: 444

PostPosted: Sat Nov 02, 2013 9:15 pm    Post subject: Reply with quote

opk44
спасибо, а я его в ini искал.
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 366

PostPosted: Mon Nov 04, 2013 11:49 am    Post subject: Reply with quote

Подскажите, пожалуйста, как найти любые первые символы строки от 1 до 10, например?
И как привести имя файла, например, LinesSelectCopyMoveDuplicate.js к виду LinesSelectCopy..js, ограничив максимальную длину пусть 20 символами и сохранив расширение (в т.ч. "не стандартные" 4 и более символов (типа .jpeg))? Не силен в регулярных выражениях, погуглил - так и не разобрался.
Back to top
View user's profile Send private message
Infocatcher



Joined: 06 Aug 2007
Posts: 1629

PostPosted: Mon Nov 04, 2013 12:54 pm    Post subject: Reply with quote

Skif_off wrote:
Подскажите, пожалуйста, как найти любые первые символы строки от 1 до 10, например?
По какому признаку искать-то?

Skif_off wrote:
И как привести имя файла, например, LinesSelectCopyMoveDuplicate.js к виду LinesSelectCopy..js, ограничив максимальную длину пусть 20 символами и сохранив расширение (в т.ч. "не стандартные" 4 и более символов (типа .jpeg))?
Примерно так:
Code:
var fileName = "LinesSelectCopyMoveDuplicate.js";
var fileNameShort = getShortFileName(fileName);
WScript.Echo(fileName + "\n" + fileNameShort + " [length: " + fileNameShort.length + "]");

function getShortFileName(fileName) {
   var maxLength = 18;
   var replacement = "…";
   if(fileName.length <= maxLength)
      return fileName;
   var ext = /\.([^.]+)$/.test(fileName) ? RegExp.$1 : "";
   if(ext && ext.length < maxLength*0.5)
      return fileName.substr(0, maxLength - ext.length - 1) + replacement + ext;
   var cutPos = Math.round(maxLength*0.6);
   return fileName.substr(0, cutPos) + replacement + fileName.slice(cutPos - maxLength + 1);
}
Back to top
View user's profile Send private message Visit poster's website
opk44



Joined: 16 Jan 2010
Posts: 344

PostPosted: Mon Nov 04, 2013 12:57 pm    Post subject: Reply with quote

Skif_off wrote:
Подскажите, пожалуйста, как найти любые первые символы строки от 1 до 10, например?
1. Посмотрите "Руководство" (раздел 8: /AkelFiles/Docs/AkelHelp-Rus.htm#ch7).
2.
Code:
^       Соответствует позиции начала строки.
От этого и пляшем:
2.1) ^.{10} Первые 10 ЛЮБЫХ символов, но не вполне годится для коротких строк, т.к. символ новой строки тоже "ЛЮБОЙ" и будут захватываться несколько пустых строк.
2.2) ^[^\r]{10} Здесь ищутся ЛЮБЫЕ 10 символов за исключением символа "новой строки". Строки короче {10} символов игнорируются.
2.3) ^[^\r]{1,10} Этот чуть измененный второй вариант позволит из длинных строк брать первые 10, а из коротких (от 1 до 9 символов) все что есть.
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 366

PostPosted: Mon Nov 04, 2013 2:41 pm    Post subject: Reply with quote

Infocatcher wrote:
По какому признаку искать-то?

Просто первые 10 симолов без каких-либо условий Smile
Infocatcher wrote:
Примерно так:

Спасибо, а как можно одним выражением? Instructor добавил возможность задавать количество символов в имени на вкладке, из AkelHistory-Rus.txt:
Quote:
Добавлено: ручные параметры "TabNameFind" и "TabNameRep" - определяют шаблон поиска/замены регулярного выражения для имени вкладки в режиме MDI/PMDI.

Пытаюсь понять, как это можно сделать Smile

opk44
Понял, спасибо, только насчет \r не совсем понял: . вроде не включает конец строки? Хотя, ЕМНИП, это было из мана к perl.

Добавлено:

Infocatcher, opk44, еще раз спасибо, но, пожалуй, забью - туплю безбожно с регулярными выражениями, подожду релиза и скопирую у кого-нибудь.
Можете порекомендовать какой-нибудь из конструкторов регулярных выражений, максимально похожий на AkelPad?
Back to top
View user's profile Send private message
Infocatcher



Joined: 06 Aug 2007
Posts: 1629

PostPosted: Mon Nov 04, 2013 3:29 pm    Post subject: Reply with quote

Skif_off wrote:
Спасибо, а как можно одним выражением?
Quote:
Добавлено: ручные параметры "TabNameFind" и "TabNameRep" - определяют шаблон поиска/замены регулярного выражения для имени вкладки в режиме MDI/PMDI.

Странные настройки...
Теперь у нас две проблемы ©

Вот простой вариант:
TabNameFind = ^(.{14}).{2,}(.{10})$
TabNameRep = \1…\2

А вот поиск точки расширения с учетом того, что ее может не быть, у меня не заработал. Скажем,
Code:
(?<=^.{12}).{2,}(?=\.[^\.]{1,9}$|.{9}$)

найдет не точку, а «.{9}$».
Back to top
View user's profile Send private message Visit poster's website
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5398

PostPosted: Mon Nov 04, 2013 3:42 pm    Post subject: Reply with quote

Skif_off wrote:
Пытаюсь понять, как это можно сделать Smile
В AkelHelp-Rus.htm же указан пример использования.
Back to top
View user's profile Send private message Send e-mail
Skif_off



Joined: 20 Oct 2013
Posts: 366

PostPosted: Mon Nov 04, 2013 4:26 pm    Post subject: Reply with quote

Instructor
Посыпаю голову пеплом - открыл только AkelHistory-Rus.txt чтобы скопировать историю и проглядел, что AkelHelp-Rus.htm тоже обновлен, а проверить в голову не пришло.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    AkelPad Forum Index -> Discussion (Russian) All times are GMT
Goto page Previous  1, 2, 3, 4, 5, 6 ... 20, 21, 22  Next
Page 5 of 22

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


SourceForge.net Logo Powered by phpBB © 2001, 2005 phpBB Group