استبدال و replaceall هي طرق شائعة لاستبدال الشخصيات في جافا.
1) معلمات الاستبدال هي char و charsequence ، والتي يمكن أن تدعم استبدال الأحرف واستبدال السلسلة (تعني تسلسل السلسلة ، لوضعه بصراحة ، سلسلة) ؛
2) معلمة replaceall هي regex ، أي بديل يعتمد على تعبير منتظم.
أوجه التشابه: جميع الأحرف أو الأوتار في السلسلة المصدر بأحرف أو سلاسل محددة. ) ، يحل محل الحدوث الأول للسلاسل فقط ؛
بالإضافة إلى ذلك ، إذا كانت بيانات المعلمة المستخدمة من قبل replaceall () و replaceFirst () لا تعتمد على تعبير منتظم ، فإن تأثير استبدال السلسلة هو نفسه استبدال () ، أي كلاهما يدعم أيضًا عمليات السلسلة ؛
ملاحظة أخرى: بعد إجراء عملية الاستبدال ، لم يتغير محتوى سلسلة المصدر.
كمثال:
String Src = New String ("AB43A2C43D") ؛ f ') ؛ => AB4F2C4FD. f ")) ؛ => fb43fc23d. system.out.println (src.replacefirst (" // d ، "f") ؛ => abf32c43d system.out.println (src.replacefirst (4 "،" h " )) ؛ => ABH32C43D.كيفية استبدال "/" في سلسلة بـ "//":
سلسلة MSGIN ؛
سبب:
'/' هو شخصية الهروب في جافا ، لذلك اثنان بحاجة إلى تمثيل واحد. على سبيل المثال ، تم طباعة System.out.println ("//") ؛ ومع ذلك ، "/" هو أيضًا حرف هروب في تعبير منتظم (معلمة replaceall هي تعبير منتظم) ، ويجب استخدام اثنين لتمثيل واحد. لذلك: /// يتم تحويله إلى // بواسطة Java ، ويتم تحويل // إلى / عن طريق التعبير العادي.
نفس
شفرة:////////
جافا: ////
regex: //
عدة طرق لاستبدال "/" في سلسلة بـ "/":
msgout = msgin.replaceall ("/" ، "///") ؛يتم تمييز الاختلافات بين استبدال () و replaceall () في جافا من خلال أمثلة.