Regex

Favori Regex Kodlarım

TC Kimlik No:

/([1-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])/
Daha kısa ve son hanenin çift olmasını kontrol eden hali:
^[1-9]{1}[0-9]{9}[02468]{1}$


Javascript Turkish Title Case

Kelimelerin İlk Harflerini Türkçe Uyumlu Büyük Harf Yapma

Eğer Javascript veya Jquery kullanarak kelimelerin ilk harflerini büyük harfe çevirmek ve bunu Türkçe harfler için de sorunsuz çalıştırmak istiyorsanız aşağıdaki fonksiyonu kullanabilirsiniz.

Turkish TitleCase:
/**
 * Kelimelerin sadece ilk harfini buyuk hale cevirip yollar (Title Case)
 * Turkce karakterleri dogru cevirir.
 * . , ; ! : - ? ve bosluk karakterlerini kelime ayirici olarak sayar. 
 */
function toTitleCaseTR(str) {
    return str.toLocaleLowerCase('tr-TR').replace(/(?:^|\s|,|;|!|:|-|\.|\?)[a-z0-9ğçşüöı]/g, function(match) {
        return match.toLocaleUpperCase('tr-TR');
    });
}

Eğer metnin hepsini büyük veya küçük yapacaksanız aşağıdaki şekilde kullanabilirsiniz.

Turkish UpperCase:
str.toLocaleUpperCase('tr-TR');

Turkish LowerCase:
str.toLocaleLowerCase('tr-TR');

Javascript Reload Page


Best way for reload the page with javascript:

window.location.reload(false);

True:  load from server.
False: load from cache.

VueJs Remove Spaces From Input Value


VueJs Remove Spaces From Input Value

Delete all spaces from input value:

<input type="text" name="card_number" v-model="foo">
<input type="hidden" name="bar" :value="foo.replace(/\s/g, '')">

VueJs Input Uppercase


VueJs Input Uppercase

VueJs Model method:
<input type="text" v-model="name" @input="name=name.toUpperCase()">

Pure JS method:
<input type="text" v-model="name" onkeyup="this.value=this.value.toUpperCase();">

VueJs Model method (with Turkish language function):
<input type="text" v-model="name" @input="name=name.turkishToUpper()">

<script>
/*TR UpperCase()*/
String.prototype.turkishToUpper = function(){
  var string = this;
  var letters = { "i": "İ", "ş": "Ş", "ğ": "Ğ", "ü": "Ü", "ö": "Ö", "ç": "Ç", "ı": "I" };
  string = string.replace(/(([iışğüçö]))/g, function(letter){ return letters[letter]; })
  return string.toUpperCase();
}
/*TR UpperCase*/
<script>

reveal.js Maximum call stack size exceeded error

Maximum call stack size exceeded error

I added width and height value in settings. And I get some error:

reveal.js:1980 Uncaught RangeError: Maximum call stack size exceeded.
    at dispatchEvent (reveal.js:1980)
    at layout (reveal.js:2296)
    at onWindowResize (reveal.js:5527)
    at dispatchEvent (reveal.js:1980)
    at layout (reveal.js:2296)
    at onWindowResize (reveal.js:5527)
    at dispatchEvent (reveal.js:1980)
    at layout (reveal.js:2296)
    at onWindowResize (reveal.js:5527)
    at dispatchEvent (reveal.js:1980)

In order to fix it, go to line 2295 in reveal.js file. And replace if condition like this:

if( oldScale !== scale && typeof event == 'undefined' ) {
    dispatchEvent( 'resize', {
        'oldScale': oldScale,
        'scale': scale,
        'size': size
    } );
}

jquery-formatCurrency TL Uyumlu Yapma


Rakamları para formatına çevirmek için jquery-formatCurrency eklentisini kullanıyor iseniz (ki tavsiye ederim) ve TL uyumlu çevirmesini istiyorsanız basitçe başarabilirsiniz:

1. https://code.google.com/archive/p/jquery-formatcurrency/ adresinden son versiyonu indirin.
2. jquery.formatCurrency.js dosyasını açın ve aşağıdaki değişikliği yapın:

    Gördüğünüz gibi EN için yazılmış kısmı TR haline çevirdik.
4. Sonra kaydedip bu dosyayı ftp den yükleyin.
5. Sayfanızda head etiketleri arasında bu js dosyasını çağırın:
<script src="jquery.formatCurrency.js"></script>
6. Sonrasında kullanımı basit. Diyelim rakamınız, id'si #ucret olan input giriş kutusunda yazıyor. Bu şekilde input kutusu içindeki rakamın formatını değiştirmiş olursunuz:
$('#ucret').formatCurrency();

Not: Dilerseniz regions['tr-TR'] şeklinde her dil için ayrı formatlar tanımlayabilirsiniz. O zaman aşağıdaki gibi kullanmanız gerekecektir:
$('#ucret').formatCurrency({roundToDecimalPlace: 2, region: 'tr-TR' }); //₺1.000,00


bootstrapValidator Tab Validation


bootstrapValidator İle Tab Kontrolü | bootstrapValidator Tab Validation

bootstrapValidator kullanıyorsanız ve formunuz yukarıdaki resimde olduğu gibi tablardan oluşuyor ise validation işlemi sağlıklı çalışmayacaktır. Çünkü diğer tab'a geçtiğinizde önceki tab'larda oluşan hatalar görülmediği için sanki formda hata yokmuş gibi işleme devam etmektedir. Aşağıda verdiğim js kodlarını eklediğinizde tab'ların hepsi hatasız olana kadar submit butonu disable olacaktır. Fakat öncelikli olarak şu kontrolü yapın: formda hata oluşunca ilgili tab kırmızı olmalıdır yani hata oluşan tab .bv-tab-error class'ına sahip olmalıdır. Böyle olduğunu kabul ederek devam ediyorum.

$(document).ready(function() {
    $('#ayarlarForm').bootstrapValidator({
        excluded: [':disabled'],
        ...
    }).on('success.field.bv', function(e, data) {
        //Tabs control
        if ( $('#tabs').find('.bv-tab-error').length ) {
            $("#btn-save-form").attr("disabled", true);
        }
    }).on('error.field.bv', function(e, data) {
        //Tabs control
        if ( $('#tabs').find('.bv-tab-error').length ) {
            $("#btn-save-form").attr("disabled", true);
        }
    });
});

Bu kadar. Artık hatalar kalkana kadar yani tablardan herhangi biri .bv-tab-error class'ına sahip değil ise submit butonu aktif olacak ve devam edilebilecektir.

input type="text" İçin Otomatik Focus Özelliği Ekleme

Web formlarındaki input type text türündeki form elemanlarına otomatik focus (geçiş) sağlamak için aşağıdaki yöntemi uygulayabilirsiniz. Bu sayede sayfa açılır açılmaz imleç belirttiğiniz text kutusu içinde aktif olacaktır.

Örnek:
<body OnLoad="document.uyegirisformu.kullaniciadi.focus();">
  <form name="uyegirisformu">
  <input type="text" name="kullaniciadi">
  </form>
</body>

PHP ve Jquery ile Google suggest benzeri AutoComplete | Otomatik Metin Tamamlama Hazırlamak

Hazırladığınız web sitelerindeki arama kutuları için Google veya Facebook benzeri bir otomatik metin tamamlama özelliği kullanmak isterseniz şu 2 siteyi örnek olarak inceleyebilirsiniz:

http://www.zskblog.com/detay.aspx?id=41

http://loopj.com/2009/04/25/jquery-plugin-tokenizing-autocomplete-text-entry/