दिलचस्प पोस्ट
सबमिट करने से पहले ऐप के लिए iTunes लिंक प्राप्त करें एसक्यूएल कॉलम में सबसे अधिक लगातार मान खोजें JQGrid कस्टम छंटनी यदि आपको GetStringuthershars एक प्रतिलिपि लौटाए, तो क्या आपको रिलीज स्ट्रींगटिफर्स कॉल चाहिए? हर जगह क्लिक करें लेकिन यहां इवेंट Iphone sdk 3.0 में पृष्ठभूमि कार्य के लिए डेमन प्रक्रिया को लागू करने के लिए कैसे? सुंदर सूप के साथ एक विशेषता मान एक्स्ट्रेक्ट करना एक संग्रह से यादृच्छिक सबसेट लेने का सबसे अच्छा तरीका है? मैं सी ++ 11 में एक धागा कैसे समाप्त कर सकता हूं? मैं एक asp.net सत्र कैसे http और https के बीच साझा कर सकता हूँ MATLAB में हैश तालिकाएं Windows Vista / 7 के लिए सी # में प्रमाणीकरण संवाद दिखाएं एंड्रॉइड में एडीआर 2लाइन का उपयोग कैसे करें ग्रहण में परिप्रेक्ष्य कैसे जोड़ें ए एल एस मॉडल – पूर्ण_यू * वी ^ टी * वी कैसे उत्पन्न करें?

नियमित अभिव्यक्ति, पूंजी पत्र से विभाजित स्ट्रिंग लेकिन टीएलए को अनदेखा करें

मैं regex का उपयोग कर रहा हूँ

System.Text.RegularExpressions.Regex.Replace(stringToSplit, "([AZ])", " $1").Trim() 

उदाहरण के लिए, पूंजी पत्र द्वारा स्ट्रिंग विभाजित करने के लिए:

' माय नोमेस सिमोन' 'मेरा नाम साइमन है'

एन्यूमरेशन के साथ काम करते समय मुझे यह अविश्वसनीय रूप से उपयोगी लगता है। मैं क्या करना चाहूंगा यह थोड़ा बदलता है जिससे कि तार केवल विभाजित हो जाएंगे अगर अगले अक्षर एक लोअरकेस अक्षर है, उदाहरण के लिए:

'यूएसएटोडे' अमरीका टुडे होगा

क्या यह किया जा सकता है?

संपादित करें: जवाब देने के लिए सभी के लिए धन्यवाद। मैं पूरी तरह से इस बारे में सोचा नहीं हो सकता, कुछ मामलों में 'ए' और 'आई' को अनदेखा करने की आवश्यकता होगी, लेकिन यह संभव नहीं है (कम से कम एक सार्थक तरीके से नहीं)। मेरे मामले में हालांकि नीचे दिए गए जवाबों में मुझे क्या चाहिए। धन्यवाद!

Solutions Collecting From Web of "नियमित अभिव्यक्ति, पूंजी पत्र से विभाजित स्ट्रिंग लेकिन टीएलए को अनदेखा करें"

 ((<= [Az]) [AZ] |? [AZ] (= [az]))

या उसके यूनिकोड से परिचित चचेरे भाई

 ((<= \ P {करूँगा}) \ p {लू} |? \ P {लू} (= \ p {करूँगा}))

जब विश्व स्तर पर प्रतिस्थापित किया गया

 " $1" 

हैंडल

 TodayILiveInTheUSAWithSimon
 संयुक्त राज्य अमेरिका आज
 IAmSOOOBored

उपज

  आज मैं शमौन के साथ अमेरिका में रहते हैं
 संयुक्त राज्य अमेरिका आज
 मैं सुओ ऊब रहा हूँ

एक दूसरे चरण में आपको स्ट्रिंग ट्रिम करना होगा।

किसी भी अपरकेस वर्ण का पालन नहीं किया जाता है जो किसी अपरकेस वर्ण द्वारा नहीं किया जाता है:

 Replace(string, "([AZ])(?![AZ])", " $1") 

संपादित करें:

मैंने देखा है कि आप इसका उपयोग एन्यूमरेशन के लिए कर रहे हैं। मैं सचमुच इस तरह की गणनाओं की स्ट्रिंग अभ्यावेदन का उपयोग करने के लिए प्रोत्साहित नहीं करता हूं, और समस्याओं का हाथ एक अच्छा कारण है क्यों इस पर एक नज़र डालें: http://www.refactoring.com/catalog/replaceTypeCodeWithClass.html

आप गणनाओं को बदलने के बारे में सोच सकते हैं; एमएस कोडिंग दिशानिर्देश पास्कल आवरण के संक्षिप्त नामों को निर्देश देते हैं जैसे कि वे शब्द थे; XmlDocument , HtmlWriter , आदि। दो-पत्र वाले acryonyms इस नियम का पालन नहीं करते हैं, हालांकि; System.IO

तो आप UsaToday का उपयोग करना चाहिए, और आपकी समस्या गायब हो जाएगी।

Tomalak अभिव्यक्ति मेरे लिए काम किया है, लेकिन अंतर्निहित में Replace समारोह के साथ नहीं Regex.Replace() , हालांकि, काम किया था।

 For i As Integer = 0 To names.Length - 1 'Worked names(i) = Regex.Replace(names(i), "((?<=[az])[AZ]|[AZ](?=[az]))", " $1").TrimStart() ' Didn't work 'names(i) = Replace(names(i), "([AZ])(?=[az])|(?<=[az])([AZ])", " $1").TrimStart() Next 

बीटीडब्ल्यू, मैं यूआई में प्रदर्शन के लिए गणन के नामों में शब्दों को विभाजित करने के लिए इसका उपयोग कर रहा हूं और यह खूबसूरती से काम करता है।

नोट: मैंने इस प्रश्न को पर्याप्त नहीं पढ़ा था, यूएसएटोड "आज" वापस करेगा; इसलिए यह anwser सही नहीं है

  public static List<string> SplitOnCamelCase(string text) { List<string> list = new List<string> (); Regex regex = new Regex(@"(\p{Lu}\p{Ll}+)"); foreach (Match match in regex.Matches(text)) { list.Add (match.Value); } return list; } 

यह "वेकऑनबूट" को "वेक ऑन बूट" के रूप में मेल करेगा और एनएमआई या टीएलए पर कुछ भी वापस नहीं करेगा

मेरा संस्करण जो सरल अंकगणितीय अभिव्यक्तियों को भी संभालता है:

 private string InjectSpaces(string s) { var patterns = new string[] { @"(?<=[^AZ,&])[AZ]", // match capital preceded by any non-capital except ampersand @"(?<=[AZ])[AZ](?=[az])", // match capital preceded by capital and followed by lowercase letter @"[\+\-\*\/\=]", // match arithmetic operators @"(?<=[\+\-\*\/\=])[0-9,\(]" // match 0-9 or open paren preceded by arithmetic operator }; var pattern = $"({string.Join("|", patterns)})"; return Regex.Replace(s, pattern, " $1"); }