Bir tez, herhangi bir karakterin tüketilmediği bir eşleşme noktasının öncesinde veya sonrasındaki karakterler üzerinde yapılacak bir sınama belirtir. Basit savlar önceleme karakteri altında açıklandığı gibi \b, \B, \A, \Z, \z, ^ ve $ olarak kodlanabilir. Birden fazla alt şablondan oluşan daha karmaşık savlar da düzenlenebilir. Bunların iki çeşidi vardır: Eşleşmeye konu dizge içinde geçerli konumun öncesine bakanlar ve sonrasına bakanlar.
   Bir tez alt şablonu, eşleşme noktasının değişmesine sebep olmadığı
   takdirde normal yollarla eşleşecektir. Eşleşme noktasının
   sonrasına bakan tezler, olumlu savlar için  (?=
   ile, olumsuz savlar için ise (?! ile başlar. Örneğin,
   \w+(?=;) şablonu, ardına bir noktalı virgül konmuş
   bir sözcükle eşleşecek, ancak ardında noktalı virgül bulunmayan bir
   sözcükle eşleşmeyecektir. foo(?!bar) şablonu ardında
   "bar" bulunmayan herhangi bir "foo" ile eşleşecektir. Ancak, benzer
   şekilde, (?!foo)bar şablonu, öncesinde "foo" dışında
   bir dizge bulunan bir "bar" dizgesini bulamayacak; buna karşın,
   öncesinde hiçbir şey bulunmayan, ilk "bar" dizgesini bulacaktır. Çünkü
   (?!foo) savı, sonraki üç karakter "bar" olduğu takdirde daima doğru
   olacaktır. Bu etkiyi geriye bakan bir savla da sağlamak mümkündür.
  
   Eşleşme noktasının öncesine bakan tezler, olumlu
   savlar için (?<= ile, olumsuz savlar için ise (?<! ile başlar.
   Örneğin, (?<!foo)bar şablonu öncesinde "foo"
   bulunmayan bir "bar" dizgesiyle eşleşecektir. Geriye bakan bir savın
   içeriğinin eşleşeceği dizgenin sabit uzunlukta olması gerekir.
   (?<=bullock|donkey) şablonu bu kurala uyarken
   (?<!dogs?|cats?) şablonu, derleme sırasında
   hataya sebep olur. Farklı uzunlukta dizgelerle eşleşen geriye bakan
   şablonlara sadece olasılıkların belirtildiği alt şablonun dışında izin
   verilir. Bu kural, tüm olasılıkların aynı uzunlukta dizge ile
   eşleşmesini gerektiren Perl 5.005 sürümünden farklıdır. Örneğin,
   (?<=ab(c|de)) savına Perl 5.005 sürümünde izin
   verilmez, çünkü üst seviye olasılıklar farklı uzunlukta dizgelerden
   oluşur. Ancak, şablon,  (?<=abc|abde) örneğindeki
   gibi iki ayrı olasılığa bölünürse sorun çıkmaz. Geriye bakan savların
   gerçekleniminde, her olasılık için, geçici olarak belli bir uzunlukta
   geriye gidilip eşleşme denenir. Eğer, eşleşme noktasının öncesinde
   yeteri sayıda karakter yoksa eşleşme ister istemez başarısız olur.
   Geriye bakan savlar, dizge sonlarıyla eşleşmede, sadece bir kere
   eşleşen alt şablonlarla birlikte kullanıldığında oldukça yararlıdır.
   Böyle, sadece bir kere eşleşen alt şablon örneklerini
   Sadece bir kerelik alt şablonlar bölümünde bulabilirsiniz.
  
   Başarılı bir eşleşmede birden fazla sav bulunabilir. Örneğin,
   (?<=\d{3})(?<!999)foo şablonu, öncesindeki üç
   rakam "999" olmayan bir "foo" dizgesiyle eşleşecektir. Farkettiğiniz
   gibi, her sav, eşleşmeye konu dizge içinde hep aynı noktaya bağımsız
   olarak uygulanır. Yapılan ilk şey, önceki üç karakterin birer rakam olup
   olmadığıdır. Ancak bundan sonra o üç rakamın "999" olup olmadığına
   bakılır. Bu şablon, "foo" dizgesinin önündeki, ilk üç karakteri rakam
   olan ve son üç karakteri "999" olmayan altı karakterle eşleşmez.
   Örneğin, "123abcfoo" dizgesiyle eşleşme sağlanamayacaktır. İstenen
   eşleşmeyi sağlamak için şablonun
   (?<=\d{3}...)(?<!999)foo olarak düzenlenmesi
   gerekir.
  
İlk sav için önce, "foo" dizgesini önceleyen altı karakterin ilk üçünün rakam olup olmadığına bakılır. Sonra ikinci sav için altılının son üç karakterinin "999" olup olmadığına bakılır.
   Savlar çeşitli birleşimler oluşturacak şekilde iç içe düzenlenebilir.
   Örneğin, (?<=(?<!foo)bar)baz şablonu öncesinde
   "foo" ile öncelenmemiş "bar" dizgeleri bulunan "baz" dizgeleriyle
   eşleşir. (?<=\d{3}...(?<!999))foo şablonu ise,
   öncesinde 3 rakam ile öncelenmiş "999" içermeyen üç karakter bulunan
   "foo" dizgeleriyle eşleşecektir.
  
Aynı savı bir kereden fazla kanıtlamanın bir anlamı olmadığından, sav alt şablonları, yinelenemeyecekleri gibi yakalayan alt şablonlar da olamazlar. Sav alt şablonların içerdiği yakalayan alt şablonlar, ana şablonun tümüne ait yakalayan alt şablonlar olarak değerlendirilirler. Bununla birlikte, bu çeşit yakalayan alt şablonlar sadece olumlu savlarda dışa taşınırlar, çünkü olumsuz savlarda dışa taşınacak bir şey olmaz.
Savlar en fazla 200 yaylı ayraçlı alt şablon içerebilir.
