मैं निम्नलिखित प्रारूप में एक स्ट्रिंग है:अक्षरों में स्ट्रिंग्स की सरणी में अक्षर n "युक्त बहु-पंक्ति स्ट्रिंग को कैसे विभाजित करें?
$ echo "${ARRAY[0]}"
I'm\nNed\nNederlander
$ echo "${ARRAY[1]}"
I'm\nLucky\nDay
$ echo "${ARRAY[2]}"
I'm\nDusty\nBottoms
हालांकि, मैं कर रहा हूँ:
I'm\nNed\nNederlander
I'm\nLucky\nDay
I'm\nDusty\nBottoms
मैं ऐसा है कि लाइन द्वारा तार लाइन की एक सरणी को यह स्थानांतरित करना चाहते हैं स्ट्रिंग के भीतर "\ n" वर्णों के साथ समस्याओं में चल रहा है। स्ट्रिंग में उन्हें दो अलग-अलग वर्ण, बैकस्लैश और 'एन' के रूप में दर्शाया जाता है, लेकिन जब मैं सरणी विभाजन करने की कोशिश करता हूं तो उन्हें न्यूलाइन के रूप में व्याख्या किया जाता है। इस प्रकार IFS
के साथ विशिष्ट स्ट्रिंग विभाजन काम नहीं करता है।
उदाहरण के लिए:
$ read -a ARRAY <<< "$STRING"
$ echo "${#ARRAY[@]}" # print number of elements
2
$ echo "${ARRAY[0]}"
I'mnNednNederla
$ echo "${ARRAY[1]}"
der
Btw, किसी को भी एसई के ठीक करने के लिए पता है उपरोक्त कोड का भयानक स्वरूपण? –
"भयानक प्रारूपण" एस्ट्रोफ्रेश के कारण एकल उद्धरण के रूप में व्याख्या किया जा रहा है (जिसे यह संतुलित करने की अपेक्षा करता है)। "कोड" टैग के बजाय "ब्लॉक उद्धरण" टैग का प्रयोग करें। – twalberg