में बचने वाले पात्रों के साथ डीलिमीटर को संभालना मैंने अपनी क्वेरी के लिए वेब खोजा है, लेकिन मुझे वह जवाब नहीं मिला जो मेरी आवश्यकता को ठीक से फिट करता है। मैं नीचे की तरह मेरे स्ट्रिंग है:जावा स्ट्रिंग.split() विधि
A|B|C|The Steading\|Keir Allan\|Braco|E
मेरे आउटपुट नीचे तरह दिखना चाहिए:
A
B
C
The Steading|Keir Allan|Braco
E
मेरे आवश्यकता सीमांकक को छोड़ने के लिए अगर यह एस्केप अनुक्रम से पहले किया जाता है। मैं String.split()
में नकारात्मक lookbehinds निम्नलिखित का उपयोग कर की कोशिश की है:
(?<!\\)\|
लेकिन, मेरी समस्या सीमांकक गतिशील अंत उपयोगकर्ता द्वारा परिभाषित किया जाएगा और यह हमेशा |
होने की जरूरत नहीं है। यह कीबोर्ड पर कोई चरित्र नहीं हो सकता है (कोई प्रतिबंध नहीं)। इसलिए, मेरा संदेह यह है कि उपरोक्त रेगेक्स कुछ विशेष पात्रों के लिए असफल हो सकता है जिन्हें रेगेक्स में अनुमति नहीं है।
मैं सिर्फ यह जानना चाहता था कि यह करने का यह सही तरीका है या नहीं।
शीघ्र प्रतिक्रिया के लिए धन्यवाद। लेकिन, मैं जानना चाहूंगा कि रेगेक्स में सभी विशेष पात्रों की अनुमति है या नहीं। इस के लिए कोई अपवाद? – user2757740
@ user2757740 'Pattern.quote()' के लिंक किए गए दस्तावेज़ पढ़ें; यह एक स्ट्रिंग लेता है और सभी विशेष पात्रों से बच निकलता है। कोई अपवाद नहीं है। – arshajii
जिसने मेरे अधिकांश प्रश्नों को हल किया। बहुत बहुत धन्यवाद .. लेकिन, मैं अपने बचने के अनुक्रम के लिए उसी पैटर्न.क्वोट() को भी लागू करना चाहता था। लेकिन, मुझे डर है कि यह काम नहीं कर रहा है :((? user2757740