regex - UTF-8 characters in preg_match_all (PHP) -
मेरे पास preg_match_all ('/ [aäeioöééíoú] / u', $ IN, $ out, PREG_OFFSET_CAPTURE); < / Code>
यदि $ in = 'hëllo'
$ out
है:
सरणी (1) { [0] = & gt; सरणी (2) {[0] = & gt; सरणी (2) {[0] = & gt; स्ट्रिंग (2) "ë" [1] = & gt; Int (1)} [1] = & gt; सरणी (2) {[0] = & gt; स्ट्रिंग (1) "ओ" [1] = & gt; Int (5)}}}
o
की स्थिति होनी चाहिए। मैंने इस समस्या के बारे में ऑनलाइन पढ़ा है ( ë
2 के रूप में गिना जाता है) क्या इसका कोई समाधान है? मैंने mb_substr
और इसी तरह देखा है, लेकिन preg_match_all
के लिए ऐसा कुछ है?
संबंधित की तरह: क्या उनका के बराबर है पायथन में preg_match_all
(स्ट्रिंग में उनकी स्थिति के साथ मैचों की सरणी लौटाना)
पीएचपी यूनिकोड का बहुत अच्छा समर्थन नहीं करता है , इसलिए बहुत सारे स्ट्रिंग फ़ंक्शंस, जिसमें preg_ * शामिल है, फिर भी वर्णों के बजाय बाइट्स को गिना जाता है।
मैंने एन्कोडिंग और डीकोडिंग स्ट्रिंग्स द्वारा एक समाधान खोजने की कोशिश की, लेकिन अंततः यह सभी preg_match_all फ़ंक्शन पर आया।
अजगर चीज़ के बारे में: एक अजगर रेगेक्स मैचबाइजम में डिफ़ॉल्ट रूप से मैच की स्थिति होती है। प्रारंभ () और मो .ेंड ()। देखें:
Comments
Post a Comment