Regex ტესტერი
შეამოწმე რეგულარული გამოსახულება ტექსტზე ცოცხალი დამთხვევების გამოკვეთით
ამოწმებს რეგულარულ გამოსახულებას სატესტო ტექსტთან შედარებით, ცოცხლად უსვამს ხაზს ყველა დამთხვევას, პატერნის, ალმებისა თუ სატესტო ტექსტის წერისთანავე.
როგორ მუშაობს
თქვენი პატერნი და ალმები კომპილირდება ბრაუზერის ჩაშენებული RegExp ძრავით; დამთხვევები კი გროვდება 'g' ალმის შიდა დამატებით (თუნდაც თქვენ არ დაგეწეროთ), რომ ყოველი დამთხვევა გამოიკვეთოს, არა მხოლოდ პირველი. სატესტო ტექსტის დამთხვეული ნაწილები გამოკვეთილია, დანარჩენი კი ჩვეულებრივ ტექსტად რჩება.
ხშირად დასმული კითხვები
ყველა დამთხვევის დასანახად საკუთარი 'g' (გლობალური) ალამი უნდა დავამატო?
არა — გამოკვეთვა ყოველთვის ეძებს ყველა დამთხვევას, დაგიწერიათ 'g' თუ არა. ალმების ველი მაინც მოქმედებს სხვა ქცევებზე, მაგალითად, რეგისტრისადმი უგრძნობლობაზე ('i') ან მრავალხაზიან რეჟიმზე ('m'), ისევე როგორც რეალურ კოდში.
რატომ აჩვენა შეცდომა, დამთხვევების ნაცვლად?
ან თავად პატერნი შეიცავს არასწორ რეგექსის სინტაქსს, ან ერთ-ერთი ალამი, რომელიც დაწერეთ, ვალიდური არ არის — ბრაუზერის RegExp ძრავა ორივეს უარყოფს, და შეცდომის ტექსტი ისე ჩნდება, როგორც ბრაუზერმა თქვა, რომ ზუსტად დაინახოთ, რაზე შეედავა.
არსებობს ლიმიტი, რამდენ დამთხვევას აჩვენებს?
დიახ — ერთ ტესტზე 5000-მდე დამთხვევა, რაც გაცილებით მეტია ნებისმიერ რეალისტურ საჭიროებაზე, მაგრამ იცავს იმისგან, რომ შემთხვევით ყველაფერთან-დამთხვევადმა პატერნმა დიდ სატესტო ტექსტზე გვერდი არ გაყინოს.
ეს ისე იქცევა, როგორც რეგექსი სხვა ენებში, მაგალითად Python-ში ან PHP-ში?
ის კონკრეტულად JavaScript-ის საკუთარ რეგექსის ძრავას იყენებს, რომელიც ძალიან ჰგავს სხვა ენების უმეტესობას, მაგრამ სინტაქსური განსხვავებებიც აქვს (მაგალითად, lookbehind-ის მხარდაჭერა ძრავის ვერსიის მიხედვით იცვლება) — თუ სხვა ენისთვის წერთ რეგექსს, ეს მიახლოებით, არა ზუსტ ეტალონად ჩათვალეთ.
ჩემი სატესტო ტექსტი სადმე იგზავნება?
არა — პატერნის შედარება მთლიანად თქვენს ბრაუზერში, JavaScript-ის ჩაშენებული რეგექსის ძრავით ხდება. არაფერი იტვირთება.