Normal İfadeler ve RegExp Nesnesi
Normal ifade, bir karakter örüntüsünü tanımlayan bir nesnedir.
JavaScript RegExp sınıfı normal ifadeleri temsil eder ve hem String hem de RegExp Metin üzerinde güçlü kalıp eşleştirme ve ara ve değiştir işlevleri gerçekleştirmek için normal ifadeleri kullanan yöntemler tanımlayın.
Sözdizimi
Normal bir ifade ile tanımlanabilir RegExp () yapıcı, aşağıdaki gibi -
var pattern = new RegExp(pattern, attributes);
or simply
var pattern = /pattern/attributes;
İşte parametrelerin açıklaması -
pattern - Normal ifadenin veya başka bir normal ifadenin modelini belirten bir dize.
attributes - Sırasıyla genel, büyük / küçük harfe duyarlı olmayan ve çok satırlı eşleşmeleri belirten "g", "i" ve "m" özelliklerinden herhangi birini içeren isteğe bağlı bir dize.
Parantez
Parantezler ([]), normal ifadeler bağlamında kullanıldığında özel bir anlama sahiptir. Bir dizi karakter bulmak için kullanılırlar.
Sr.No. | İfade ve Açıklama |
---|---|
1 | [...] Parantezler arasında herhangi bir karakter. |
2 | [^...] Parantez içinde olmayan herhangi bir karakter. |
3 | [0-9] 0 ile 9 arasındaki herhangi bir ondalık basamakla eşleşir. |
4 | [a-z] Küçük harfli herhangi bir karakterle eşleşir a küçük harfle z. |
5 | [A-Z] Büyük harften herhangi bir karakterle eşleşir A büyük harfle Z. |
6 | [a-Z] Küçük harfli herhangi bir karakterle eşleşir a büyük harfle Z. |
Yukarıda gösterilen aralıklar geneldir; 0 ile 3 arasındaki herhangi bir ondalık basamağı eşleştirmek için [0-3] aralığını veya aşağıdakiler arasındaki küçük harfli karakterlerle eşleştirmek için [bv] aralığını da kullanabilirsiniz.b vasıtasıyla v.
Niceleyiciler
Parantez içindeki karakter dizilerinin ve tek karakterlerin sıklığı veya konumu özel bir karakterle gösterilebilir. Her özel karakterin belirli bir çağrışımı vardır. +, *,? Ve $ işaretlerinin tümü bir karakter dizisini izler.
Sr.No. | İfade ve Açıklama |
---|---|
1 | p+ Bir veya daha fazla p içeren herhangi bir dizeyle eşleşir. |
2 | p* Sıfır veya daha fazla p içeren herhangi bir dizeyle eşleşir. |
3 | p? En fazla bir p içeren herhangi bir dizeyle eşleşir. |
4 | p{N} Bir dizi içeren herhangi bir dizeyle eşleşir N p'ler |
5 | p{2,3} İki veya üç p dizisi içeren herhangi bir dizeyle eşleşir. |
6 | p{2, } En az iki p içeren herhangi bir dizeyle eşleşir. |
7 | p$ Sonundaki p ile herhangi bir dizeyle eşleşir. |
8 | ^p Başındaki p ile herhangi bir dizeyle eşleşir. |
Örnekler
Aşağıdaki örnekler, eşleşen karakterler hakkında daha fazlasını açıklamaktadır.
Sr.No. | İfade ve Açıklama |
---|---|
1 | [^a-zA-Z] Aralığındaki herhangi bir karakteri içermeyen herhangi bir dizeyle eşleşir. a vasıtasıyla z ve A üzerinden Z. |
2 | p.p İçeren herhangi bir dizeyle eşleşir p, ardından herhangi bir karakter, ardından başka bir karakter gelir p. |
3 | ^.{2}$ Tam olarak iki karakter içeren herhangi bir dizeyle eşleşir. |
4 | <b>(.*)</b> <b> ve </b> içindeki herhangi bir dizeyle eşleşir. |
5 | p(hp)* A içeren herhangi bir dizeyle eşleşir p ardından dizinin sıfır veya daha fazla örneği hp. |
Değişmez karakterler
Sr.No. | Karakter açıklaması |
---|---|
1 | Alphanumeric Kendisi |
2 | \0 NUL karakteri (\ u0000) |
3 | \t Sekme (\ u0009 |
4 | \n Yeni satır (\ u000A) |
5 | \v Dikey sekme (\ u000B) |
6 | \f Form beslemesi (\ u000C) |
7 | \r Satır başı (\ u000D) |
8 | \xnn Onaltılık sayı nn ile belirtilen Latin karakteri; örneğin, \ x0A aynıdır \ n |
9 | \uxxxx Onaltılık sayı xxxx ile belirtilen Unicode karakteri; örneğin, \ u0009 aynıdır \ t |
10 | \cX Kontrol karakteri ^ X; örneğin, \ cJ yeni satır karakterine eşdeğerdir \ n |
Metakarakterler
Meta karakter, kombinasyona özel bir anlam katma işlevi gören ters eğik çizgiden önce gelen alfabetik bir karakterdir.
Örneğin, '\ d' meta karakterini kullanarak büyük miktarda para arayabilirsiniz: /([\d]+)000/, Buraya \d herhangi bir sayısal karakter dizisi arayacaktır.
Aşağıdaki tablo, PERL Stili Normal İfadelerinde kullanılabilen bir dizi meta karakteri listelemektedir.
Sr.No. | Karakter açıklaması |
---|---|
1 | . tek bir karakter |
2 | \s boşluk karakteri (boşluk, sekme, yeni satır) |
3 | \S boşluk olmayan karakter |
4 | \d bir rakam (0-9) |
5 | \D rakam olmayan |
6 | \w bir kelime karakteri (az, AZ, 0-9, _) |
7 | \W kelime olmayan bir karakter |
8 | [\b] gerçek bir backspace (özel durum). |
9 | [aeiou] verilen kümedeki tek bir karakterle eşleşir |
10 | [^aeiou] verilen kümenin dışındaki tek bir karakterle eşleşir |
11 | (foo|bar|baz) belirtilen alternatiflerden herhangi biriyle eşleşir |
Değiştiriciler
Birlikte çalışma şeklinizi basitleştirebilecek birkaç değiştirici mevcuttur regexps, büyük / küçük harf duyarlılığı, birden çok satırda arama vb.
Sr.No. | Değiştirici ve Açıklama |
---|---|
1 | i Büyük / küçük harfe duyarlı olmayan eşleştirme gerçekleştirin. |
2 | m Dizede satırsonu veya satır başı karakterleri varsa, ^ ve $ operatörlerinin artık bir dize sınırı yerine yeni satır sınırıyla eşleşeceğini belirtir |
3 | g İlk maçtan sonra durmak yerine tüm eşleşmeleri bulan global bir maç gerçekleştirir. |
RegExp Özellikleri
RegExp ile ilişkili özelliklerin listesi ve açıklamaları burada.
Sr.No. | Özellik ve Açıklama |
---|---|
1 | constructor
Specifies the function that creates an object's prototype. |
2 | global
Specifies if the "g" modifier is set. |
3 | ignoreCase
Specifies if the "i" modifier is set. |
4 | lastIndex
The index at which to start the next match. |
5 | multiline
Specifies if the "m" modifier is set. |
6 | source
The text of the pattern. |
In the following sections, we will have a few examples to demonstrate the usage of RegExp properties.
RegExp Methods
Here is a list of the methods associated with RegExp along with their description.
Sr.No. | Method & Description |
---|---|
1 | exec()
Executes a search for a match in its string parameter. |
2 | test()
Tests for a match in its string parameter. |
3 | toSource()
Returns an object literal representing the specified object; you can use this value to create a new object. |
4 | toString()
Returns a string representing the specified object. |
In the following sections, we will have a few examples to demonstrate the usage of RegExp methods.