Yapılandırma dosyalarında normal ifadeleri saklayan bir Perl programım var. Onlar şeklindedir:Perl'de normal ifadelerin çift enterpolasyonu
regex = ^/d+$
Başka bir yerde, regex dosyasından çözümlenmiş ve bir değişkene depolanır - $regex
. Sonra regex'i kontrol ederken değişken kullanın, ör.
$lValid = ($valuetocheck =~ /$regex/);
Yapılandırma dosyasında perl değişkenlerini içermek istiyorum, ör.
regex = ^\d+$stored_regex$
Ama nasıl yapılacağını bilemiyorum.
Düzenli ifadeler Perl tarafından ayrıştırıldığında, iki kez yorumlanır. İlk önce değişkenler genişletilir ve ardından normal ifadenin kendisi ayrıştırılır. İlk önce, $regex
arasına sokmak içerdiği değişkenler interpole ve ardından ortaya çıkan normal ifadeyi ayrıştırmak: Ben gerekenler
üç aşamalı bir süreçtir. Hem ilk iki enterpolasyonun "düzenli ifadenin farkında olması" gerekir. Örneğin. dize, ankraj gibi $
içerdiğini bilmelidirler ...
Herhangi bir fikrin var mı?
Zarif bir çözümdür. –