PAC मधील shExpMatch वाइल्डकार्ड वापरते, रेग्युलर एक्स्प्रेशन नाही
प्रॉक्सी नियम बरोबर दिसू शकतो पण कधीही जुळणार नाही, कारण shExpMatch आणि JavaScript रेग्युलर एक्स्प्रेशन वेगवेगळ्या पॅटर्न भाषा वापरतात.
PAC मध्ये shExpMatch शेल-शैलीतील वाइल्डकार्ड वापरते. example.com च्या सबडोमेनसाठी:
if (shExpMatch(host, "*.example.com")) {
return "PROXY proxy.example:8080";
}या रिटर्न मूल्यांमध्ये धोरणाने निवडलेले HTTP एंडपॉइंट वापरा; HTTP प्रॉक्सी यादी अनुमत सार्वजनिक मार्गांसाठी उमेदवार देते. तारका ही अक्षरांच्या क्रमाशी जुळते. हा रेग्युलर एक्स्प्रेशनचा पुनरावृत्ती ऑपरेटर नाही, म्हणून regex सारखे दिसणारे .*example.com अर्थ बदलते.
धोरणात असेल तेव्हा अचूक पालक नाव स्पष्टपणे समाविष्ट करा:
if (host === "example.com" || shExpMatch(host, "*.example.com")) {
return "PROXY proxy.example:8080";
}त्याऐवजी *example.com वापरल्यास विभाजक बिंदूशिवाय त्या अक्षरांवर संपणारी नावेही स्वीकारली जातील. त्यामुळे संच इच्छित डोमेन मर्यादेपलीकडे विस्तारतो.
पोर्टेबल PAC वाइल्डकार्ड आधार मध्ये * आणि ? समाविष्ट आहेत; अक्षर वर्ग अंमलबजावणीनुसार बदलतात. JavaScript regex त्याऐवजी test() आणि त्याचे स्वतःचे अँकरिंग व एस्केपिंग नियम वापरते.
इच्छित इनपुटशी जुळवा. host होस्टनेम आहे, तर url मध्ये स्कीम असते आणि ते सॅनिटाइझ झालेले असू शकते. डोमेन नियम ब्राउझर कधीही देत नाही अशा मार्गावर अपघाताने अवलंबून राहू नये.