Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

Regular Expressions [Java]


SpiderS_DangeR

Öne çıkan mesajlar

Selamlar,
Okulda hoca java projesi olarak bir kaç şey söyledi ve eğer regular expressionı seçip derlenip çalıştırılan bir kod yazabilirsek direk 100 vereceğini söyledi. ve bu dönem java 2 yi alıyorum. Yani java bilgim baya kısıtlı ama araştırıp öğrenmeye meraklıyım. Ne kadar kasar bu beni onu kestiremedim o yüzden size bir sorayım dedim. Hocanın istediği şey şuymuş. Bir text vericekmiş bize sonra (a+b).c.d* gibi bir ifade verip verdiği textin içinde bu regexin sağladığı kelimelerin satırını falan yazdırıcakmışız. Sizce bu işe kalkışmadan bıraksam mı yoksa kassam mı?

Edit:typo
Link to comment
Sosyal ağlarda paylaş

asagıdaki örnek mesela her satırı atrı ayrı eşleşirse satırını yazıo..

artık tam olarak nası bişi gerekiosa modify edersin sen.
match ve pattern in baya degisik kullanımı var cünkü.


FileInputStream fis = null;
DataInputStream in = null;
BufferedReader br = null;
try {

String regex = "[0-9]*";
Pattern pattern = Pattern.compile(regex);

fis = new FileInputStream("C:regexInputFile.txt");
in = new DataInputStream(fis);
br = new BufferedReader(new InputStreamReader(in));
String line;

int lineCount = 0;

while ((line = br.readLine()) != null) {
lineCount++;
Matcher matcher = pattern.matcher(line);
if (matcher.matches()) {
System.out.println(line + "t at line " + lineCount);
}
}

fis.close();
in.close();
br.close();

} catch (Exception ex) {
ex.printStackTrace();
}
Link to comment
Sosyal ağlarda paylaş

IO disinda library kullanmadan guzelce yapilir, az once dedigim gibi kesin sec.

Once bir Trie classi yazarsin (hatta librarysini bile kullanbilirsin, yazman cok daha guzel olur ama hatta ben yazarim bi tane istiyorsan, bayiliyorum ben trielere) sonra bu Trie'ye girilen kelimeleri yukleyip, regexe eslesenleri bastirirsin iste.

(Asagidakini anlamak icin wikipedia'dan Trie entrysini okuyunuz eger Trie data structure ini bilmiyorsaniz)

Mesela il.e girildi regex.
root -> i pointeri -> l pointeri
sonra l pointerinin gosterdigi node'dan cikan tum pointerlari takip et, eger bu pointerlarin gosterdigi node'un e pointerinin gosterdigi node'un degeri 1 ise, yani bu node'da bir kelime bitmisse, orada biten kelime regexe uyuyordur

baya zevkli bence, sec derim
Link to comment
Sosyal ağlarda paylaş

Ceday said:

ha ben yanlıs anlamısım harelde.

abi librarylerin koduna bak en basitinden.

hem net hem de java da nası implemente edilmiş bak iste.

bütün regex utilitylerini istemiyordur harelde, cok fazla var cünkü.

sanırım library kullanmadan yapmamı istiyor, yani öbür türlü kolay olurdu sanırım
Link to comment
Sosyal ağlarda paylaş

×
×
  • Yeni Oluştur...