Düzelt butonu tekrardan yazılmalı

  • Konuyu başlatan Konuyu başlatan 3507Enes
  • Başlangıç Tarihi Başlangıç Tarihi
  • Mesaj Mesaj 4
  • Görüntüleme Görüntüleme 371

3507Enes 52

Üstün
Katılım
8 Ocak 2024
Mesajlar
1.318
Makaleler
1
Çözümler
10
Beğeniler
1.296
Düzelt butonu tekrardan yazılmalı. Açıkçası biraz bakındım ve o kadar zor bir şey değil.

JavaScript:
<!DOCTYPE html>
<html lang="tr">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>Metin Düzenleme</title>
</head>
<body>
 <textarea id="girisMetni" rows="4" cols="50"></textarea><br>
 <button onclick="duzeltilmisMetniGoster()">Metni Düzelt</button><br>
 <p id="duzeltilmisMetin"></p>

 <script>
 function duzeltilmisMetniGoster() {
 var girisMetni = document.getElementById("girisMetni").value;
 var duzeltilmis = duzeltilmisMetin(girisMetni);
 document.getElementById("duzeltilmisMetin").innerHTML = duzeltilmis;
 }

 function duzeltilmisMetin(metin) {
 // Türkçe karakter düzeltmeleri.
 var turkceKarakterler = {
 "\u0131": "ı", "\u0130": "i",
 "\u015F": "s", "\u015E": "s",
 "\u011F": "ğ", "\u011E": "g",
 "\u00FC": "ü", "\u00DC": "u",
 "\u00F6": "ö", "\u00D6": "o",
 "\u00E7": "ç", "\u00C7": "c",
 };
 for (var key in turkceKarakterler) {
 metin = metin.replace(new RegExp(key, "g"), turkceKarakterler[key]);
 }

 // Diğer düzeltmeler.
 metin = metin.replace(/\bq\b/g, "k");
 metin = metin.replace(/\bw\b/g, "v");

 // Büyük harfle başlayan kısaltmaları düzelt.
 var kisaltmalar = ["CPU", "GPU", "RAM", "AMD", "MHz", "GHz"];
 for (var i = 0; i < kisaltmalar.length; i++) {
 metin = metin.replace(new RegExp("\\b" + kisaltmalar[i].toLowerCase() + "\\b", "g"), kisaltmalar[i]);
 }

 // Noktalama işaretlerini düzelt.
 metin = metin.replace(/\s*([^\w\s])\s*/g, '$1'); // Noktalama işaretlerinden önce ve sonra boşluk ekleme.
metin = metin.replace(/\s{2,}/g, ' '); // Birden fazla boşluğu tek boşlukla değiştirme.

 metin = metin.replace(/([.?!])\s*([^\s\d])/g, '$1 $2'); // Cümle sonlarında boşluk bırak.

 // Cümle başında büyük harfle başlama.
 metin = metin.replace(/^[a-zöçşğıüı]/g, function (match) {
 return match.toUpperCase();
 });

 // İki nokta
 metin = metin.replace(/\.{2,}/g, '.');

 metin = metin.replace(/\bTurkce\b/g, "Türkçe");

 return metin;
 }
 // Örnektir kullanım önerilmez.
 </script>

</body>

</html>

Bu kodda bayağı eksik var ama gidirebilir. ChatGPT kullanılcağı zaman cümleyi resmi yazıyor. Belki GPT'ye bir ayar verirek yaptırılır. Onu bilmem. Yine de bu öneriyi sunuyorum. Sizin fikirlerinizi de duymak isterim.
 
ChatGPT'ye devredilecekti yazım denetimi. @uintptr de haklı. Forum kurallarını okuyunuz. Türkçe karakter zorunlu değildir.
 
Türkçe karakter kullanımı zorunlu değil, düzeltilmesine de gerek yok bu nedenle.

Düzelt butonunda düzeltilmesi gereken kodlar var. Bir cümle yazıp nokta koyduktan sonra cümleye “a” harfi ve kalın harfle başlarsak ve sonrasında düzelt butonuna basarsak cümle küçük harfle başlıyor. Diğer harflerde olmuyor galiba.

Ne haber. aşırı küçük bir detay. Normalde büyük harf ile başladım ancak düzelt butonuna basınca küçük harfe döndü.
Bunun için ayrı bir öneri konusu açmam gerekiyor muydu bilmiyorum ancak hazır düzelt butonu ile ilgili olunca yazayım dedim. @Enes3078

Sorun düzeltilmiş galiba.

Hâlâ aynı. Ancak mesela nokta koyduktan sonra kalın harf ile “anne” yazınca olmuyor. Sadece “aşırı” yazınca oluyor galiba, ilginç.
 
Son düzenleme:
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…