\s
জাভা ইউনিকোড সাদা স্পেস সম্পত্তি সমর্থন করে না - যদিও জাভা ইউনিকোড # 18 এর আরএল 1.2 পূরণের জন্য কঠোরভাবে প্রয়োজন তবুও জাভা ইউনিকোড সাদা স্পেস সম্পত্তি সমর্থন করে না আপনি জাভাতে ব্যবহার করতে পারবেন না ! এটি যা আছে তা মানদণ্ড অনুসারে নয় a
ইউনিকোড 26 কোড পয়েন্টগুলি \p{White_Space}
এমনভাবে সংজ্ঞায়িত করে : তাদের মধ্যে 20 \pZ
জেনারাল ক্যাটাগরি = বিভাজক বিভিন্ন ধরণের এবং বাকী 6 টি \p{Cc}
জেনারেল ক্যাটাগরি = নিয়ন্ত্রণ ।
হোয়াইট স্পেস একটি দুর্দান্ত স্থিতিশীল সম্পত্তি এবং সেই একই জিনিসগুলি প্রায় কার্যত চিরকাল। তবুও জাভাতে এমন কোনও সম্পত্তি নেই যা এর জন্য ইউনিকোড স্ট্যান্ডার্ডের সাথে সঙ্গতিপূর্ণ, সুতরাং আপনাকে পরিবর্তে এই জাতীয় কোড ব্যবহার করতে হবে:
String whitespace_chars = "" /* dummy empty string for homogeneity */
+ "\\u0009" // CHARACTER TABULATION
+ "\\u000A" // LINE FEED (LF)
+ "\\u000B" // LINE TABULATION
+ "\\u000C" // FORM FEED (FF)
+ "\\u000D" // CARRIAGE RETURN (CR)
+ "\\u0020" // SPACE
+ "\\u0085" // NEXT LINE (NEL)
+ "\\u00A0" // NO-BREAK SPACE
+ "\\u1680" // OGHAM SPACE MARK
+ "\\u180E" // MONGOLIAN VOWEL SEPARATOR
+ "\\u2000" // EN QUAD
+ "\\u2001" // EM QUAD
+ "\\u2002" // EN SPACE
+ "\\u2003" // EM SPACE
+ "\\u2004" // THREE-PER-EM SPACE
+ "\\u2005" // FOUR-PER-EM SPACE
+ "\\u2006" // SIX-PER-EM SPACE
+ "\\u2007" // FIGURE SPACE
+ "\\u2008" // PUNCTUATION SPACE
+ "\\u2009" // THIN SPACE
+ "\\u200A" // HAIR SPACE
+ "\\u2028" // LINE SEPARATOR
+ "\\u2029" // PARAGRAPH SEPARATOR
+ "\\u202F" // NARROW NO-BREAK SPACE
+ "\\u205F" // MEDIUM MATHEMATICAL SPACE
+ "\\u3000" // IDEOGRAPHIC SPACE
;
/* A \s that actually works for Java’s native character set: Unicode */
String whitespace_charclass = "[" + whitespace_chars + "]";
/* A \S that actually works for Java’s native character set: Unicode */
String not_whitespace_charclass = "[^" + whitespace_chars + "]";
এখন আপনি whitespace_charclass + "+"
আপনার প্যাটার্ন হিসাবে ব্যবহার করতে পারেন replaceAll
।
দুঃখিত 'এই সব। জাভার রেজিক্সগুলি কেবল তার নিজস্ব নেটিভ চরিত্রের সেটগুলিতে খুব ভাল কাজ করে না এবং তাই আপনাকে কাজ করার জন্য আপনাকে সত্যই বিদেশী হুপসের মধ্য দিয়ে ঝাঁপিয়ে পড়তে হবে।
এবং যদি আপনি সাদা স্থান খারাপ বলে মনে করেন, আপনার পেতে হবে \w
এবং \b
শেষ পর্যন্ত সঠিকভাবে আচরণ করতে আপনার কী করা উচিত !
হ্যাঁ, এটি সম্ভব, এবং হ্যাঁ, এটি একটি মাইন্ডবামিং গন্ডগোল। এমনকি দাতব্য হচ্ছে। জাভা জন্য একটি মান-অনুকরণকারী রেইগেক্স গ্রন্থাগার পাওয়ার সহজতম উপায় হ'ল জেএনআই থেকে আইসিইউয়ের স্টাফ to গুগল অ্যান্ড্রয়েডের জন্য এটিই করে, কারণ ওরাসুনের পরিমাপ হয় না।
আপনি যদি এটি না করতে চান তবে এখনও জাভা দিয়ে আটকে থাকতে চান তবে আমার একটি ফ্রন্ট-এন্ড রেজেক্স পুনর্লিখনের গ্রন্থাগার রয়েছে আমি লিখেছি যে "ফিক্স" জাভার ধরণগুলি অন্তত ইউটিএসে আরএল 1.2a এর প্রয়োজনীয়তা অনুসারে আনতে হবে # 18, ইউনিকোড নিয়মিত অভিব্যক্তি ।