يُسمى الحرف الذي ليس حرفًا أبجديًا أو رقميًا بحرف خاص. يجب علينا إزالة جميع الأحرف الخاصة من السلسلة حتى نتمكن من قراءة السلسلة بوضوح وطلاقة. الأحرف الخاصة غير قابلة للقراءة، لذا سيكون من الجيد إزالتها قبل القراءة.
طريقة استبدال الكل في جافا ().
جافا استبدال الكل () طريقة خيط تستبدل الفئة كل سلسلة فرعية من هذه السلسلة التي تطابق التعبير العادي المحدد بالاستبدال.
بناء الجملة
public String replaceAll(String regex, String replacement)
تقبل هذه الطريقة اثنين حدود:
يقوم بإرجاع السلسلة الناتجة . يرمي PatternSyntaxException إذا كان بناء جملة التعبير العادي غير صالح. الطريقة المذكورة أعلاه تعطي نفس نتيجة التعبير:
Pattern.compile(regex).matcher(str).replaceAll(repl)
مثال على إزالة الأحرف الخاصة باستخدام طريقة استبدال الكل ().
في المثال التالي، تقوم طريقة RemoveAll() بإزالة كافة الأحرف الخاصة من السلسلة وتضع مسافة في مكانها.
public class RemoveSpecialCharacterExample1 { public static void main(String args[]) { String str= 'This#string%contains^special*characters&.'; str = str.replaceAll('[^a-zA-Z0-9]', ' '); System.out.println(str); } }
انتاج |
This string contains special characters
مثال
في المثال التالي، نقوم باستبدال كل الأحرف الخاصة بالمسافة.
public class RemoveSpecialCharacterExample2 { public static void main(String args[]) { String str = 'Hello+-^Java+ -Programmer^ ^^-- ^^^ +!'; str = str.replaceAll('[-+^]*', ' '); //str=str.replaceAll('\W', ' ') //we can also use this regular expression System.out.println(str); } }
انتاج |
كيفية تحويل السلسلة إلى عدد صحيح في جافا
Hello Java Programmer !
مثال على إزالة الأحرف الخاصة باستخدام المنطق المحدد من قبل المستخدم
في المثال التالي، نقوم بتعريف المنطق لإزالة الأحرف الخاصة من السلسلة. نحن نعلم أن قيمة ASCII للأبجدية ذات الأحرف الكبيرة تبدأ من 65 إلى 90 (A-Z) وقيمة ASCII للأبجدية ذات الأحرف الصغيرة تبدأ من 97 إلى 122 (a-z). تتم مقارنة كل حرف مع قيمة ASCII المقابلة له. إذا عاد الشرطان المحددان بصحيح، فإنه سيرجع صحيحًا وإلا سيرجع خطأ. ال لحلقة ينفذ حتى طول السلسلة. عندما تصل السلسلة إلى حجمها، يتم إنهاء التنفيذ ونحصل على السلسلة الناتجة.
public class RemoveSpecialCharacterExample3 { public static void main(String[] args) { //declare a string having special characters String str='Pr!ogr#am%m*in&g Lan?#guag(e'; String resultStr=''; //loop execute till the length of the string for (int i=0;i64 && str.charAt(i)<=122) returns true if both conditions { adding characters into empty string resultstr="resultStr+str.charAt(i);" } system.out.println('string after removing special characters: '+resultstr); < pre> <p> <strong>Output</strong> </p> <pre> String after removing special characters: ProgrammingLanguage </pre> <hr></=122)>
=122)>