• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Notepad++ kopiowanie wklejanie określonej części tekstu w pętli

0 głosów
61 wizyt
pytanie zadane 6 dni temu w C i C++ przez Grzegorz Mikina Użytkownik (660 p.)
Witam, szukałem ale nic nie pasuje do mojego zapytania, więc pytam. Chce hurtowo zamienić ileś linijek przykładowo ok 150.

<li><a target="_blank" href="http://..."title="..."Przykładowa nazwa</a></li>

<li>Przykładowa nazwa<a target="_blank" href="http://..."title="..."</a></li>

Dodam, że Przykładowa nazwa jest zmienną częścią, mogę to tak ustawić, żeby była jednakowo długa, może być zawarta między cudzysłowami, ale sam tekst jest zmienny. Wiem, że notepad++ jest bardzo rozbudowanym kompilatorem tekstu, jednak nie mam pomysłu.Czy ma ktoś jakiś pomysł jak to rozwiązać?

1 odpowiedź

0 głosów
odpowiedź 6 dni temu przez Tomek Sochacki Nałogowiec (27,350 p.)
wybrane 6 dni temu przez Grzegorz Mikina
 
Najlepsza

Według mnie najlepiej wyrażeniem regularnym, w notepad++ daj ctrl+H do okna wyszukana i podmiany tekstu, następnie w polu szukany tekst wpisujesz regexp i na dole zaznaczasz "wyrażenia regularne". Możesz sobie wtedy też ładnie analizować kolejne dopasowania i w razie czego poprawiać.

Napisz tylko dokładnie co na co chcesz zmienić, to znaczy daj jakiś konkretny przykład "tekst pierwotny" + "test po zmianie" to pomożemy stworzyć regexp.

Myślę, że moglibyśmy tutaj wyszukać tagi <a> i </a> i dopasować tekst pomiędzy nimi.

Jeśli chcesz zamienić <li><a ... >COS</a></li> na <li>COS<a ...></a></li> (tak wynika z Twojego opisu) to może to zrobić np. wzorzec:

 

szukany tekst: <li>(<a.*?>)(.+)<\/a><\/li>
zamień na:     <li>$2$1<\/a><\/li>

tylko napisz czy na pewno o to Ci chodzi, czy jakaś inna zmiana? Aha, i pamiętaj o włączeniu "wyrażenia regularne" na dole okna szukaj/zamień!

komentarz 6 dni temu przez Grzegorz Mikina Użytkownik (660 p.)
Dał bym Ci kolego drugi raz pomógł, jak była by tylko taka możliwość. Więcej takich ludzi jak Ty a świat będzie dużo lepszym miejscem, niż jest.
komentarz 6 dni temu przez Tomek Sochacki Nałogowiec (27,350 p.)
:) Spoko. Na tym forum jest sporo osób chętnie pomagających, a przy okazji poznałem możliwości notepad++, kto wie kiedy się przydadzą :)
komentarz 6 dni temu przez Grzegorz Mikina Użytkownik (660 p.)
^ początek wzorca ^za zapałka, zadra, zapłon, zarazek kazanie, poza, bazar
$ koniec wzorca az$
^.arka$
uraz, pokaz
barka, warka
azymut, pokazy
parkan
. dowolny pojedynczy znak .an.a panda, Wanda, panna, kania rana, konia
[...] dowolny z wymienionych znaków; możemy podawać kolejne znaki lub wpisywać zakres - na przykład [a-z] oznacza wszystkie małe litery. Wymieniając specjale znaki z końca tej tabeli nie musimy poprzedzać znakiem \ [a-z]an[nd]a
[a-z][a-zA-Z0-9.-][pus]
pana, panda, wanna
pas, mAs, p2p, m3u, b-s, z.u
Wanda, kania
Bas, bal, balu, mp3
[^...] dowolny z niewymienionych znaków kre[^st] krew, krem kres, kret
| dowolny z rozdzielonych znakiem ciągów [nz]a|pod|przed
trzynasty|13-ty|13
na, za, pod, przed
trzynasty, 13-ty, 13
 
(...) zawężenie zasięgu g(ż|rz)eg(ż|rz)(u|ó)łka
(ósmy|8-my|8)(maj|maja)
gżegżółka, gżegrzółka, gżegrzułka, grzegrzułka
ósmy maja, 8-my maj, 8 maja
 
? zero lub jeden poprzedzający znak lub element; elementem może być na przykład wyrażenie umieszczone wewnątrz nawiasów (...) ro?uter
(ósmy|8(-my)?)maja?
router, ruter
ósmy maja, ósmy maj, 8-mymaja, 8-my maj, 8 maja, 8 maj
 
+ jeden lub więcej poprzedzających znaków lub elementów; elementem może być na przykład wyrażenie umieszczone wewnątrz nawiasów (...) [0-9]+[abc]
pan+a
(tam)+
10a, 1b, 003c, 42334b
pana, panna, pannnna
tam, tamtam, tamtamtam
a, b, c, z, 14, 03, 12d, 1231z
paa, panda, ta, tamta, mat
* zero lub więcej poprzedzających znaków lub elementów; elementem może być na przykład wyrażenie umieszczone wewnątrz nawiasów (...) [0-9]*[abc]
pora*n*a*
10a, 1b, 003c, 42334b, a, b, c
por, poa, poranna, poraannnaa, pornnna
k, 2335, porada, panna
{4} dokładnie 4 poprzedzające znaki lub elementy [0-9]{4} 8765, 8273, 2635 12345, 234, 2123456
{4,} 4 lub więcej poprzedzających znaków lub elementów [ah]{4,} haha, haaaaahaha, ahaaa haa, ha, hehe, aha
{2,4} od 2 do 4 poprzedzających znaków lub elementów p.{2,4}a piana, pola, polana psa, poranna
\. znak kropki [0-9]{,3}\.[0-9]{,3}\.[0-9]{,3} 128.0.0.2 128-0-0-2
\* znak * \*.+ *nic nic*, nic
\/ znak / ^\/\/$ //  
\? znak ? ^.+\?$ Czy to jest kot? Czy to jest kot
\: znak : ^.+\:$ Oto one: :nic
\. znak . \.+ ......  
\^ znak ^ .*\^ To jest ^ To jest &
\+ znak + [0-9]+\+[0-9]+ 928374+29832 23873-32787
238738278
\\ znak \ c\:\\ c:\  
\= znak = [0-9]+\+[0-9]+\=[0-9]+ 11+12=23 11+12+23
\| znak | x \|\| y x || y  
komentarz 6 dni temu przez Tomek Sochacki Nałogowiec (27,350 p.)
Hmm... powiedzmy, że na początek przygody z regexp może być :) Są tu pewnie nieścisłości i braki ale nie chcę Ci zbyt mocno komplikować.

Jedyne co to nawiasy okrągłe: "( ... )" to nie do końca "zawężenie zakresu" (nie wiem skąd niektórzy biorą te nazwy...:) Można to rozumieć w pewnym sensie jako podwzorzec, czyli dodatkowy, wewnętrzny wzorzec regexp, który może zostać zapamiętany lub nie (grupy bez zapamiętania tworzy się: "(?: ... )").

Nie wiem w jakim języku programowania działasz, ale jeśli w JS to na moim blogu poruszałem parę tematów związanych z wyrażeniami regularnymi z przykładami (poradnik.drogimex.pl).

Ale na pewno polecam poznać chociaż podstawy regexp, wbrew pozorom często się to przydaje.
komentarz 6 dni temu przez Grzegorz Mikina Użytkownik (660 p.)
Jak widać na dzisiejszym przykładzie na pewno niedługo będę wiedzieć coś na ten temat. Pozdrawiam, jeszcze raz dzięki za pomoc.

Podobne pytania

0 głosów
4 odpowiedzi 385 wizyt
pytanie zadane 31 stycznia 2016 w Offtop przez Miki Obywatel (1,310 p.)
0 głosów
2 odpowiedzi 156 wizyt
pytanie zadane 22 lipca w Systemy operacyjne, programy przez Quasch Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 87 wizyt
pytanie zadane 12 listopada w C i C++ przez maonthe Nowicjusz (120 p.)

42,445 zapytań

81,749 odpowiedzi

162,269 komentarzy

20,388 pasjonatów

Przeglądających: 105
Pasjonatów: 2 Gości: 103

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...