XSD Regex Desen Test Aracı
XSD Deseni
Dönüştürülmüş Desen
^[A-Z]{2}[0-9]{3}$Test Metni
Sonuç
AB123XSD Regex Sözdizimi Referansı
Karakter Sınıfları
| . | Any character |
| [abc] | Match a, b, or c |
| [^abc] | Match anything except a, b, c |
| [a-z] | Character range (a to z) |
| \d | Digit (0-9) |
| \D | Non-digit |
| \s | Whitespace |
| \S | Non-whitespace |
| \p{L} | Unicode letter category(\p{L} (with 'u' flag)) |
| \p{N} | Unicode number category(\p{N} (with 'u' flag)) |
| \i | XML initial name character (XSD only, supported by xspattern) |
| \c | XML name character (XSD only, supported by xspattern) |
| [a-z-[aeiou]] | Character class subtraction (XSD only, supported by xspattern) |
Niceleyiciler
| a* | 0 or more |
| a+ | 1 or more |
| a? | 0 or 1 (optional) |
| a{n} | Exactly n times |
| a{n,} | n or more times |
| a{n,m} | Between n and m times |
| a*? | 0 or more (non-greedy) |
| a+? | 1 or more (non-greedy) |
Gruplar
| (abc) | Capturing group |
| (?:abc) | Non-capturing group |
| a|b | Match a or b |
Kaçış Karakterleri
| \t | Tab |
| \n | Newline |
| \r | Carriage return |
| \xhh | Hex character |
| \uhhhh | Unicode character |
JavaScript'ten Önemli Farklar
| No anchors | XSD patterns match entire string by default (implicit ^ and $). xspattern handles this correctly. |
| No lookahead/lookbehind | XSD does not support (?=...), (?!...), (?<=...), (?<!...) |
| Unicode categories | XSD supports \p{L}, \p{N}, etc. xspattern supports Unicode 15.0. |
| XML name chars | XSD has \i and \c for XML name characters. xspattern supports these. |
| Character class subtraction | XSD supports [a-z-[aeiou]] syntax. xspattern fully supports this feature. |
Teknik ayrıntılar
XSD Regex Desen Test Aracı Nasıl Çalışır
Araç Ne Yapar
XSD regex desen test aracı, XML Schema Definition (XSD) regex desenlerini örnek metne karşı test etmenizi sağlar. XSD regex desenleri, JavaScript regex’inden birkaç önemli açıdan farklıdır: varsayılan olarak tüm dizeyi eşleştirirler (örtük ^ ve $ sabitleyicileri), lookahead/lookbehind doğrulamalarını desteklemezler ve XML doğrulaması için belirli sözdizimi kurallarına sahiptirler. Bu araç, XSD desenlerini test için JavaScript uyumlu regex’e dönüştürürken farkları da açıklar. XSD dosyalarında tanımlanan desen kısıtlarını test etmesi gereken; XML şemaları, XSD doğrulaması ve XML veri işleme ile çalışan geliştiriciler için faydalıdır.
Yaygın Geliştirici Kullanım Senaryoları
Geliştiriciler, regex kısıtları içeren XML Schema tanımlarıyla çalışırken XSD desen test araçlarını kullanır. XSD desenleri; e-posta adresleri, tarihler, kimlikler veya özel biçimler gibi XML öğe içeriğini doğrulamak için yaygın olarak kullanılır. XSD şemaları tanımlarken geliştiricilerin, desen kısıtlarının beklenen girdiyi doğru şekilde doğruladığından ve geçersiz verileri reddettiğinden emin olmak için test etmesi gerekir. Araç, [A-Z][0-9] gibi desenlerin "AB123" gibi biçimleri doğru şekilde eşleştirip "ab123" veya "ABC123" gibi değerleri reddettiğini doğrulamaya yardımcı olur. XSD desen test araçları, XML şema geliştirme, veri doğrulama ve XML standartlarına uyumluluğu sağlama için gereklidir.
JavaScript Regex’inden Temel Farklar
XSD regex desenlerinin JavaScript regex’inden birkaç önemli farkı vardır. İlk olarak, XSD desenleri varsayılan olarak tüm dizeyi eşleştirir; bu nedenle ^and $anchors eklemenize gerek yoktur. [A-Z] deseni, otomatik olarak yalnızca tam olarak iki büyük harften oluşan dizeleri eşleştirir. İkinci olarak, XSD lookahead ( (?=...)) veya lookbehind ( (?<=...)) doğrulamalarını desteklemez. Üçüncü olarak, XSD harfler için \p{L} ve sayılar için \p{N} gibi Unicode kategorilerini destekler; bunlar JavaScript’te Unicode bayrağını gerektirir. XSD ayrıca JavaScript regex’inde bulunmayan, XML ad karakterleri için \i ve \c gibi özel dizilere sahiptir.
XSD Desen Örnekleri
Yaygın XSD desenleri arasında; YYYY-AA-GG tarihleri için \d{4}-\d{2}-\d{2} gibi tarih biçimleri, üç rakamın takip ettiği iki harf için [A-Z][0-9] gibi tanımlayıcı desenleri ve bir veya daha fazla Unicode harfi için \p{L}+ gibi Unicode desenleri bulunur. Araç, bu desenlerin JavaScript regex’ine nasıl dönüştürüldüğünü ve test dizelerinin desenin tamamıyla mı (tam eşleşme) yoksa yalnızca kısmen mi (kısmi eşleşme) eşleştiğini gösterir. XSD desenleri tüm dizeyi eşleştirmek zorunda olduğundan, kısmi eşleşmeler desenin girdiyi tam olarak doğrulamadığını gösterir.
En İyi Uygulamalar
XSD desenlerini test ederken, alt dizeleri değil tüm dizeleri doğruladıklarını unutmayın. \d+ gibi bir desen, yalnızca tamamen rakamlardan oluşan dizeleri eşleştirir; rakam içeren dizeleri değil. Karakter sınıflarını ve niceleyicileri uygun şekilde kullanın: [A-Za-z]+ bir veya daha fazla harfi eşleştirirken, [A-Za-z]* sıfır veya daha fazla harfi eşleştirir. XML doğrulaması için, desenlerinizin beklenen verileri doğru şekilde kabul edip hatalı girdileri reddettiğinden emin olmak üzere hem geçerli hem de geçersiz girdileri test edin. Araç, dönüştürülmüş JavaScript regex desenini gösterir; böylece XSD desenlerinin test amacıyla nasıl çevrildiğini görebilirsiniz.