| View previous topic :: View next topic |
| Author |
Message |
F. Phoenix
Joined: 24 Dec 2011 Posts: 113
|
Posted: Fri Oct 05, 2012 2:22 pm Post subject: |
|
|
Найти многострочно: ^.*?(http://\S*).*?$
Заменить на: $1
Вместо \S можно прописать какой-то определенный набор допустимых в ссылке символов, а перед скобкой добавить пробел или \s, дабы отступ сделать обязательным условием - тут смотря как ссылки отделены от остального текста. |
|
| Back to top |
|
 |
Infocatcher
Joined: 06 Aug 2007 Posts: 1431
|
Posted: Fri Oct 05, 2012 3:10 pm Post subject: |
|
|
qvent
А getLinks.js не подойдет? |
|
| Back to top |
|
 |
qvent
Joined: 05 Oct 2012 Posts: 2
|
Posted: Fri Oct 05, 2012 3:26 pm Post subject: |
|
|
| Infocatcher, , браво! Спасибо огромное!!!! |
|
| Back to top |
|
 |
VladSh
Joined: 29 Nov 2006 Posts: 2509 Location: Киев, Русь
|
Posted: Wed Oct 17, 2012 4:17 pm Post subject: |
|
|
| Ребята, подскажите, как сделать так, чтобы во из всего файла оставить только уникальные фразы? То есть, если фразы 2 и более, то удалять абсолютно все вхождения этих фраз. |
|
| Back to top |
|
 |
DV
Joined: 16 Nov 2006 Posts: 723 Location: Kyiv, Ukraine
|
Posted: Wed Oct 17, 2012 5:47 pm Post subject: |
|
|
| VladSh wrote: | | как сделать так, чтобы во из всего файла оставить только уникальные фразы? |
Алгоритм примерно такой:
1. дать определение, что такое "фраза", и чем она ограничена
2. на основании пункта 1 сформировать правила для написания кода
3. на основании пункта 2 написать код
Без скрипта, думается, не обойтись (вначале проверить, что кол-во вхождений >= 2, затем ReplaceAll на пустую строку). |
|
| Back to top |
|
 |
KDJ
Joined: 06 Mar 2010 Posts: 1067 Location: Poland
|
Posted: Wed Oct 17, 2012 7:35 pm Post subject: |
|
|
VladSh
Assuming that "фраза" is any sequence of characters (minimum 3) delimited by spaces or begining/end of line:
оставить_только_уникальные_фразы.js | Code: | var oRE1 = /(^| )(.{3,})( |$)(.+?)\2/m;
var oRE2;
var sText;
var aMatch;
AkelPad.SetSel(0, -1);
sText = AkelPad.GetSelText();
while (aMatch = oRE1.exec(sText))
{
aMatch[2] = aMatch[2].replace(/[\\\/.^$+*?|()\[\]{}]/g, "\\$&");
oRE2 = new RegExp(aMatch[2], "g");
sText = sText.replace(oRE2, "");
}
AkelPad.ReplaceSel(sText); |
|
|
| Back to top |
|
 |
VladSh
Joined: 29 Nov 2006 Posts: 2509 Location: Киев, Русь
|
Posted: Thu Oct 18, 2012 8:21 am Post subject: |
|
|
DV, KDJ
Thank you very much!
More please tell me how to change the code if need only "begining / end of line"? |
|
| Back to top |
|
 |
KDJ
Joined: 06 Mar 2010 Posts: 1067 Location: Poland
|
Posted: Thu Oct 18, 2012 10:18 am Post subject: |
|
|
VladSh
If "фраза" means entire line, you can use "Format::LineGetUnique" from Format plugin. |
|
| Back to top |
|
 |
VladSh
Joined: 29 Nov 2006 Posts: 2509 Location: Киев, Русь
|
Posted: Thu Oct 18, 2012 1:52 pm Post subject: |
|
|
KDJ
Thanks, I forgot something about it) |
|
| Back to top |
|
 |
Mr.Merak
Joined: 27 Aug 2008 Posts: 84
|
Posted: Tue Nov 06, 2012 3:39 pm Post subject: найти начало строки |
|
|
| А подскажите плз, как в диалоге замены указать начало строки? |
|
| Back to top |
|
 |
KDJ
Joined: 06 Mar 2010 Posts: 1067 Location: Poland
|
Posted: Tue Nov 06, 2012 7:06 pm Post subject: |
|
|
Mr.Merak
Regular expressions: ^ |
|
| Back to top |
|
 |
Serge Yolkin
Joined: 27 Jul 2010 Posts: 122
|
Posted: Tue Nov 06, 2012 8:30 pm Post subject: |
|
|
KDJ
??? Don't work... |
|
| Back to top |
|
 |
KDJ
Joined: 06 Mar 2010 Posts: 1067 Location: Poland
|
|
| Back to top |
|
 |
Andrey_A_A
Joined: 03 Jun 2010 Posts: 478 Location: Сочи, Хоста
|
Posted: Thu Nov 08, 2012 2:43 pm Post subject: |
|
|
Помогите пожалуйста, голову сломал - нужно получить из путей "дедушкино" имя одним рег. выражением, чтобы из
C:\02\111\папка\ осталось 02
а от
C:\_02\111\папка\файл.txt осталось 111
разными получается, может одним рег. получится |
|
| Back to top |
|
 |
VladSh
Joined: 29 Nov 2006 Posts: 2509 Location: Киев, Русь
|
Posted: Thu Nov 08, 2012 2:46 pm Post subject: |
|
|
Andrey_A_A
Напиши для примера, интересно же  |
|
| Back to top |
|
 |
|