मैं इस तरह कुछ कोड है, जो एक लिंक के साथ कुछ लघुकोड बदल देता है:PHP में एक सशर्त preg_replace है?
$search = array(
'#\{r\|([^|]+)\|([^}]+)\}#',
'#\{t\|([^|]+)\|([^}]+)\}#',
...,
);
$replace = array(
'<a href="/ref/$1">$2</a>',
'<a href="/type/$1">$2</a>',
...,
);
$content = preg_replace($search, $replace, $content);
मैं बहुत अधिक है कि इसी तरह तो मैं सोच रहा था रहे हैं, वहाँ किसी तरह एक सशर्त के साथ एक सरल preg_replace
को यह कम करने के लिए है ?
उदाहरण के लिए, regex #\{([a-z])\|([^|]+)\|([^}]+)\}#
का उपयोग करें और पहले अक्षर को अपने अक्षर के आधार पर कुछ अलग (आर = रेफ, टी = प्रकार) के साथ बदलें? (यदि यह मदद करता है, लघुकोड {r|url-slug|LinkTitle}
की तरह हैं।)