C/C++ ve QT4 kullanıyorum
Fakat sorunu az önce hallettim ilginiz için teşekkürler.
http://www.4guysfromrolla.com/webtech/031302-1.shtml adresinde regular
expression ile formatlamanın nasıl yapılacağınıda buldum ama aşağıdaki C/C++
kodu daha kolayıma geldi.
QString modeltest::korAl(){
QString str = " skdfjk asdfaÅŸs faskdjf askdfadsfadf asdf "
"asdf asdfasdf sadf asdf asdfffff sadf sadfasdf [80.00 21.50
10.00 0.85] [80.00 21.50 10.00 0.85]"
"[80.00 26.00 10.00 1.85] [80.00 28.50 10.00 0.85]"
"[80.00 30.50 10.00 0.85] [80.00 34.50 10.00 2.85]"
"[80.00 38.00 10.00 1.85] [80.00 41.50 10.00 2.85]"
"[80.00 45.50 10.00 0.85] [80.00 48.50 10.00 2.85]"
"[80.00 53.50 10.00 2.85] [80.00 56.50 10.00 0.85]"
"[80.00 61.00 10.00 1.85] [80.00 63.50 10.00 0.85]"
"[80.00 65.50 10.00 0.85] [80.00 67.50 10.00 0.85]"
"[80.00 70.50 10.00 2.85] [80.00 74.50 10.00 0.85]"
"[80.00 77.00 10.00 1.85] [80.00 80.00 10.00 1.85]"
"[80.00 83.50 10.00 0.85] [80.00 87.50 10.00 0.85]"
"[80.00 91.50 10.00 2.85] [80.00 95.50 10.00 0.85]"
"[80.00 98.50 10.00 2.85] [80.00 102.50 10.00 0.85]"
"[80.00 104.50 10.00 0.85] [80.00 107.50 10.00 2.85]"
"[80.00 111.50 10.00 0.85] [80.00 113.50 10.00 0.85]"
"fsdaf sdaf skadjfksjadfj sadjfksdafskdfj ";
//str = str.simplified();
QRegExp rx("[0-9]+\\.[0-9]+");
QStringList msg;
QString koordinat;
int pos = 0;
int n = 1,row=1;
while ((pos = rx.indexIn(str, pos)) != -1) {
/*if (n==4){
koordinat += rx.cap(0) + "\n" + QVariant(row).toString() +")
";
n=0;
row++;
}
else*/
koordinat += rx.cap(0) +" ";
pos += rx.matchedLength();
n++;
}
return koordinat;
}
01.03.2008 tarihinde Atif CEYLAN <atifceylan_at_gmail.com> yazmış:
>
> nsm wrote:
> > Pardon yanlış oldu dosya içeriği;
> >
> > % 911132111123121321132311321111111321121221312321132111132111
> > [
> > % height xpos ypos width height xpos ypos width
> > [80.00 19.50 10.00 0.85] [80.00 21.50 10.00 0.85]
> > [80.00 26.00 10.00 1.85] [80.00 28.50 10.00 0.85]
> >
> > ÅŸeklindeydi ve "^(\[\d)|(\])$" deseni ile
> >
> > [80.00 19.50 10.00 0.85] [80.00 21.50 10.00 0.85]
> > [80.00 26.00 10.00 1.85] [80.00 28.50 10.00 0.85]
> >
> > şekline çevirdim. Bu çevirlen değeri
> >
> > 80.00/19.50/10.00/0.85
> > 80.00/21.50/10.00/0.85
> > 80.00/26.00/10.00/1.85
> >
> > gibi bir formata çevirmek isiyorum regular expression ile böyle bir
> > formatlama yapılabilirmi?
> >
> > 29.02.2008 tarihinde *nsm* <nesimiacarca_at_gmail.com
>
> > <mailto:nesimiacarca_at_gmail.com>> yazmış:
>
> >
> > Herkese selam; Elimdeki bir text dosyasının içeriği şu şekilde
> >
> > [80.00 19.50 10.00 0.85] [80.00 21.50 10.00 0.85]
> > [80.00 26.00 10.00 1.85] [80.00 28.50 10.00 0.85]
> >
> > regular expression ile nasıl bir pattern yazmalıyım ki aşağıdaki
> > çıktıyı versin?
> > 80.00/19.50/10.00/0.85
> > 80.00/21.50/10.00/0.85
> > 80.00/26.00/10.00/1.85
> > ...
> > ...
> > ...
> >
> > Şimdiden teşekkürler.
> >
> > --
> > Nesimi ACARCA
>
> > www.nesimia.com <http://www.nesimia.com>
> >
> >
> >
> >
> > --
> > Nesimi ACARCA
> > www.nesimia.com <http://www.nesimia.com>
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Linux-programlama mailing list
> > Linux-programlama_at_liste.linux.org.tr
> > http://liste.linux.org.tr/mailman/listinfo/linux-programlama
> >
> dil?
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
-- Nesimi ACARCA www.nesimia.com
_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Sat 01 Mar 2008 - 11:56:33 EET