CYFROWY BARON • PROGRAMOWANIE • Zobacz wątek - [BCB6] Jak napisać pętlę usuwającą znaczniki z memo?

[BCB6] Jak napisać pętlę usuwającą znaczniki z memo?

dział ogólny

Re: [BCB6] Jak napisać pętlę usuwającą znaczniki z memo?

Nowy postprzez Cyfrowy Baron » niedziela, 5 czerwca 2011, 17:53

Usuwanie tagów html rozpoczynających się < i kończących > z wykorzystaniem biblioteki boost\regex.hpp.

Wymagane są biblioteki BOOST.

kod dla zmiennych AnsiString i string:
KOD cpp:     UKRYJ  
#include <string>
#include <boost\\regex.hpp>

using namespace boost;
using namespace std;

void __fastcall TForm1::Button1Click(TObject *Sender)
{
 AnsiString text = Memo1->Text;
 string input = text.c_str();
 regex expr("<[^>]*>");
 string replace = " ";

 string result = regex_replace( input, expr, replace, match_default | format_sed);

 Memo1->Text = String( result.c_str() );
}


kod dla zmiennych UnicodeString i wstring przy mapowaniu ustawionym na wchar_t - tylko C++Builder 2009 i wyższe wersje:
KOD cpp:     UKRYJ  
#include <string>
#include <boost\\regex.hpp>

using namespace boost;
using namespace std;

void __fastcall TForm1::Button1Click(TObject *Sender)
{
 String text = Memo1->Text;
 wstring input = text.c_str();
 wregex expr(L"<[^>]*>");
 wstring replace = L" ";

 wstring result = regex_replace( input, expr, replace, match_default | format_sed);

 Memo1->Text = String( result.c_str() );
}


Szybko i bezboleśnie.

Za ten post autor Cyfrowy Baron otrzymał podziękowanie od:
areq47
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: [BCB6] Jak napisać pętlę usuwającą znaczniki z memo?

Nowy postprzez areq47 » poniedziałek, 6 czerwca 2011, 00:43

Dziękuję bardzo za pomoc. Jak tylko zainstaluje bibliotekę BOOST sprawdzę działanie tej funkcji. Mam nadzieję że nie będzie żadnych problemów ;)
Avatar użytkownika
areq47
Bladawiec
Bladawiec
 
Posty: 8
Dołączył(a): czwartek, 7 kwietnia 2011, 15:59
Podziękował : 2
Otrzymał podziękowań: 0
System operacyjny: Windows 7 64bit
Kompilator: Builder 6
Gadu Gadu: 668046
    Windows 7Firefox

Re: [BCB6] Jak napisać pętlę usuwającą znaczniki z memo?

Nowy postprzez Cyfrowy Baron » poniedziałek, 6 czerwca 2011, 09:41

BOOST to zbiór bibliotek i możesz mieć z tym problemy. Jeżeli się nie uda wykorzystaj kod polymorphism.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: [BCB6] Jak napisać pętlę usuwającą znaczniki z memo?

Nowy postprzez ola22 » wtorek, 7 czerwca 2011, 15:44

dzieki za odp, własnie miałam taki sam problem, ale już po problemie :)
Hurtownia rur i kształtek www.pcvWiPlast.pl PVC, PP, PE HD - http://www.adicom.com.pl
Avatar użytkownika
ola22
Bladawiec
Bladawiec
 
Posty: 1
Dołączył(a): wtorek, 7 czerwca 2011, 15:42
Lokalizacja: Wrocław
Podziękował : 0
Otrzymał podziękowań: 0
System operacyjny: Windows 7
Kompilator: C++ Builder 2007
Gadu Gadu: 0
    Windows 7Chrome

Poprzednia strona

  • Podobne tematy
    Odpowiedzi
    Wyświetlone
    Ostatni post

Powrót do Ogólne problemy z programowaniem

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 45 gości

cron