जावा का उपयोग करके, मैं एक टेक्स्ट की रेखाओं से गुज़रना चाहता हूं और एक्सएमएल इकाई संदर्भ &
के साथ सभी एम्पर्सेंड प्रतीकों (&
) को प्रतिस्थापित करना चाहता हूं।मैं जावा में स्ट्रिंग में किसी वर्ण को कैसे बदलूं?
मैं पाठ की रेखाओं को स्कैन करता हूं और फिर स्कैनर कक्षा के साथ पाठ में प्रत्येक शब्द स्कैन करता हूं। फिर मैं शब्द के प्रत्येक अक्षर पर दोहराने के लिए CharacterIterator
का उपयोग करता हूं। हालांकि, मैं चरित्र को कैसे बदल सकता हूं? सबसे पहले, स्ट्रिंग्स अपरिवर्तनीय वस्तुएं हैं। दूसरा, मैं कई पात्रों (amp&;
) के साथ एक वर्ण (&
) को प्रतिस्थापित करना चाहता हूं। मुझे इस बात से कैसे संपर्क करना चाहिए?
CharacterIterator it = new StringCharacterIterator(token);
for(char ch = it.first(); ch != CharacterIterator.DONE; ch = it.next()) {
if(ch == '&') {
}
}
replaceAll से सावधान रहें , क्योंकि यह नियमित अभिव्यक्ति के रूप में अपने पहले तर्क का उपयोग करता है। अर्थात। "h.e.l.l.o" .replaceAll ("।", ",") आपको ",,,,,,," देगा! जावा 1.5 में नई स्ट्रिंग.रेप्लेस (CharSequence, CharSequence) विधि है, जो कुछ समान करती है, लेकिन नियमित अभिव्यक्ति के रूप में पहली तर्क की व्याख्या नहीं करती है। –