2 kelime arasını alıp gerisi silme
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
2 kelime arasını alıp gerisi silme
Edite girilmiş beir metinde 2 kelime arasını silmek istiyorum. Daha önceki konularda bulamadım.Örnek aşağıdaki gibi:
<burası silinecek> burası kalacak <burası silinecek>
<burası silinecek> burası kalacak <burası silinecek>
DOĞUNUN SINIR TAŞI ERZURUM'UN DADAŞ'I
EFE'Sİ VAR İZMİR'İN EĞİLMEZ TÜRK' ÜN BAŞI
EFE'Sİ VAR İZMİR'İN EĞİLMEZ TÜRK' ÜN BAŞI
Re: 2 kelime arasını alıp gerisi silme
sorunuzu biraz daha açar mısınız lütfen? "2 kelime arasını silmek istiyorum" demişsiniz ama verdiğiniz örnekte iki kelime arası "silinmeyecek" deniliyor. Örneğin "kelime1 kelime2 kelime3 kelime4 kelime5 kelime6" şeklinde bir cümle girilmişse nasıl davranılacak?
There's no place like 127.0.0.1
Re: 2 kelime arasını alıp gerisi silme
Hocam özür dilerim yanlış yazmışım. Ortadaki kısım kalacak baş taraflardaki belirttiğim kelimeler silinecek.
DOĞUNUN SINIR TAŞI ERZURUM'UN DADAŞ'I
EFE'Sİ VAR İZMİR'İN EĞİLMEZ TÜRK' ÜN BAŞI
EFE'Sİ VAR İZMİR'İN EĞİLMEZ TÜRK' ÜN BAŞI
Re: 2 kelime arasını alıp gerisi silme
Sadece belirli kelimeler silinecekse StringReplaceişinizi görebilir. StringReplace'de yeni değer olarak boşluk atarsanız olur gibi.
Ama ben hala verilen bilginin yetersiz olduğu kanısındayım 
Kod: Tümünü seç
Edit1.Text := StringReplace(Edit1.Text, 'Aranacak', '', [rfReplaceAll])

There's no place like 127.0.0.1
Re: 2 kelime arasını alıp gerisi silme
merhaba
size birkaç komut açıklayayım:
pos: bir string içerisinde bir kelimeyi arar ve bulunursa pozisyonunu verir.
delete: bir stringin istenilen pozisyondan itibaren istenilen sayıda karakteri silmek için kullanılır.
uppercase yada ucase tam hatırlamıyorum sonuçta bir stringi büyük harfe çevirir. Bunu küçük büyük harf ayrımından kurtarmak için kullanabilirsiniz.
birde buna benzer komutları ansi ile başlayanları var (ansipos gibi) onları da bir araştırın (gerekirse).
sanırım bu komutlar işinizi görebilir.
kolay gelsin.
size birkaç komut açıklayayım:
pos: bir string içerisinde bir kelimeyi arar ve bulunursa pozisyonunu verir.
delete: bir stringin istenilen pozisyondan itibaren istenilen sayıda karakteri silmek için kullanılır.
uppercase yada ucase tam hatırlamıyorum sonuçta bir stringi büyük harfe çevirir. Bunu küçük büyük harf ayrımından kurtarmak için kullanabilirsiniz.
birde buna benzer komutları ansi ile başlayanları var (ansipos gibi) onları da bir araştırın (gerekirse).
sanırım bu komutlar işinizi görebilir.
kolay gelsin.
Re: 2 kelime arasını alıp gerisi silme
Şöyle bir örnek veriyim o zaman.SimaWB yazdı:Sadece belirli kelimeler silinecekse StringReplaceişinizi görebilir. StringReplace'de yeni değer olarak boşluk atarsanız olur gibi.
Ama ben hala verilen bilginin yetersiz olduğu kanısındayımKod: Tümünü seç
Edit1.Text := StringReplace(Edit1.Text, 'Aranacak', '', [rfReplaceAll])
<title> selam ben sako </title>
<title> ve</title> silinecek aradaki metin kalacak...
DOĞUNUN SINIR TAŞI ERZURUM'UN DADAŞ'I
EFE'Sİ VAR İZMİR'İN EĞİLMEZ TÜRK' ÜN BAŞI
EFE'Sİ VAR İZMİR'İN EĞİLMEZ TÜRK' ÜN BAŞI
-
- Üye
- Mesajlar: 73
- Kayıt: 06 Oca 2012 06:56
Re: 2 kelime arasını alıp gerisi silme
Kod: Tümünü seç
Edit1.Text := StringReplace(Edit1.Text, '<title>', '*', [rfReplaceAll]);
Edit1.Text := StringReplace(Edit1.Text, '</title>', '¿', [rfReplaceAll]);
edit2.Text:=copy(edit1.Text,pos('*',edit1.text)+1,pos('¿',edit1.text)-2);
Re: 2 kelime arasını alıp gerisi silme
StringReplace olur bencesako yazdı:Şöyle bir örnek veriyim o zaman.SimaWB yazdı:Sadece belirli kelimeler silinecekse StringReplaceişinizi görebilir. StringReplace'de yeni değer olarak boşluk atarsanız olur gibi.
Ama ben hala verilen bilginin yetersiz olduğu kanısındayımKod: Tümünü seç
Edit1.Text := StringReplace(Edit1.Text, 'Aranacak', '', [rfReplaceAll])
<title> selam ben sako </title>
<title> ve</title> silinecek aradaki metin kalacak...

Delphi 2009 ve sonrası için TStringBuilder'a gözatın isterseniz.
There's no place like 127.0.0.1