php - how to replace 'abc' to 'a\0\0c' -
कैसे 'एबीसी' को 'a \ 0 \ 0c' से बदलना
निम्न कोड विफल है और आउटपुट 'एसी'
& lt;? Php $ input = 'abc' दें; $ पैटर्न = '/ बी / आई'; $ प्रतिस्थापित = "\\ 0 \\ 0"; $ आउटपुट = प्रीग_रेले ($ पैटर्न, $ प्रतिस्थापित, $ इनपुट); $ आउटपुट गूंज; ? & Gt;
जब संदेह में अधिक बैकस्लैश जोड़ता है:
$ प्रतिस्थापित = '\\\\ 0 \\\\ 0';
एस्केपिंग का पहला स्तर PHP स्ट्रिंग पार्सर के लिए है। दोनों एकल उद्धरण और दोहरे उद्धरण \\
के रूप में \
व्याख्या करते हैं। अगले स्तर regex पार्सर के लिए है।
तो PHP देखता है:
\\\\ 0 \\\\ 0
जो इसे के रूप में व्याख्या करता है:
\\ 0 \\ 0
जो कि रीजेक्स पार्सर शब्दशः स्ट्रिंग के रूप में व्याख्या करता है:
\ 0 \ 0
Comments
Post a Comment