Javascript

Regular Expressions (Düzenli İfadeler)

Adından da anlaşıldığı üzere bir metnin içindeki verinin, belli kurallara göre değiştirilmesi veya bulunması işlemidir.

Test için http://www.regexr.com/ adresini kullanabilirsiniz.

Dot Matches (Nokta Eşleşmeleri)

. herhangi bir karakteri temsil eder. /./ ifadesini uyguladığımızda metindeki tüm veriyi seçer.

SnapCrab_No-0006

Herhangi bir veriyi veya verileri seçmek istiyorsak eğer

SnapCrab_No-0007

Optional (?)

Bir karakteri veya karakterleri isteğe bağlı olarak var veya yok sayar.

Örneğin bir metinde “color” kelimesini aradığımızda aynı zamanda, aynı manada olan “colour” kelimesini de aramamız gerekir.  u karakterinin isteğe bağlı olması gerekir.

SnapCrab_No-0008

 

Birden fazla karakter isteğe bağlı olduğu zaman ()?  parantezin içine yazılır.

SnapCrab_No-0009

Character Set [A-Za-z0-9]

Bize karakter tanım aralığı sunar. [0-9], [1-5], [a-z], [A-Z], [@_#], [İÜ] vs.

SnapCrab_No-0011

SnapCrab_No-0012SnapCrab_No-0013 SnapCrab_No-0014

 

Multiple * +

* karakterin veya karakterlerin hiç olmaması veya tekrarlanmasıdır. Örneğin e*

+ karakterin veya karakterlerin 1 defa olması veya tekrarlamasıdır. Örneğin e+

SnapCrab_No-0015 SnapCrab_No-0016

 

Quanfiers {}

Belli bir aralıkta karakterin veya karakterlerin devam etmesidir. Örnek e{1}, [a-z]{5} vs.

SnapCrab_No-0021 SnapCrab_No-0022 SnapCrab_No-0023

Alternations |

Birkaç hecenin (karakterlerin) veya işlemine tabi tutulmasıdır.

SnapCrab_No-0017SnapCrab_No-0018

 

Anchors & Flags

^ Satır başını temsil eder.

$ Satır sonunu temsil eder.

Flags

i: ignore case (küçük-büyük harf duyarsız)

g: global

m: multiline (birden çok satır)

SnapCrab_No-0024

Groups ()

Grupların yakalanması (bulunması) işlemidir.

SnapCrab_No-0019

 

1. parantez $1, 2. parantez $2 dir. Biz adresleri alacağımız için bu parantezleri iptal edip (?:) metnin tamamını parantez içine alırız.

SnapCrab_No-0020

 

PHP Kullanım

<?php

$regex = '/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[a-zA-Z]{2,4}/';

$string = 'ibasoglu@example.com';

if(preg_match($regex, $string)){
	echo 'Bu e-mail adresidir.';
}else{
	echo 'Bu e-mail adresi değildir.';
}

//Çıktı: Bu e-mail adresidir.
?>

 

JavaScript Kullanım

var regex = new RegExp('[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[a-zA-Z]{2,4}', 'g');
var string = 'ibasoglu@example.com';

if(regex.exec(string)){
    console.log('Bu e-mail adresidir.');
}else
    console.log('Bu e-mail adresi değildir.');

//Çıktı: Bu e-mail adresidir.

 

Hayırlı günler, sağlıcakla kalın.

Bu döküman www.ibasoglu.com’a aittir. Kaynak belirtmek suretiyle alıntı yapılabilir.

Javascript Üzerine İki Satır…

Selamün Aleyküm Arkadaşlar;

<script type="text/javascript">
//Kodlar
</script>

Javascript kodları script etiketleri arasına yazılır.

Javascript client (istemci) tabanlı çalışır. Sunucu tabanlı çalışmaz.

Javascript değişken var degisken_adi olarak tanımlanır.

var degisken_adi;

Bir örnek yapalım. Sayfanın başlığını değiştirelim.

var baslik="Sayfa Başlığı";
document.title=baslik;

Javascripte fonksiyon tanımlanması:

function altprogram(parametre)
{
//Kodlar
}

altprogram();

Butona tıklandığı zaman bir formu submit edelim. ID si form1 adında tanımlı bir formumuz olsun.

<form id="form1" name="form1" method="post" action="">
  <table width="326" border="1">
    <tr>
      <td width="79">Kullanıcı Adı</td>
      <td width="189"><label for="kullanici"></label>
      <input type="text" name="kullanici" id="kullanici" /></td>
    </tr>
    <tr>
      <td>Parola</td>
      <td><input type="text" name="parola" id="parola" /></td>
    </tr>
    <tr>
     <input type="button" value="Giriş" onclick="gonder('deneme.php');" />
    </tr>
  </table>
</form>

<script type="text/javascript">
function gonder(sayfa)
{
	var form=document.getElementById("form1");
	form.action=sayfa;
	form.submit();
}
</script>