Python - String Methods

در Python رشته‌ها (Strings) یک کلاس داخلی هستند و متدهای زیادی برای جستجو، تغییر و بررسی متن دارند.
در اینجا پرکاربردترین String Methods با مثال آورده شده‌اند:

🔹 تغییر حروف (Case)

متدتوضیحمثال
()upperهمه حروف به بزرگ"hello".upper()"HELLO"
()lowerهمه حروف به کوچک"HELLO".lower()"hello"
()titleاولین حرف هر کلمه بزرگ"hello world".title()"Hello World"
()capitalizeاولین حرف کل رشته بزرگ"python".capitalize()"Python"
()swapcaseبرعکس کردن بزرگی/کوچکی"PyThOn".swapcase()"pYtHoN"

🔹 حذف فاصله و کاراکتر اضافی

متدتوضیحمثال
()stripحذف فاصله/کاراکترهای مشخص از ابتدا و انتها" hi ".strip()"hi"
()lstripحذف از سمت چپ" hi".lstrip()"hi"
()rstripحذف از سمت راست"hi ".rstrip()"hi"

🔹 جستجو و بررسی

متدتوضیحمثال
find(sub)اندیس اولین وقوع یا -1"hello".find("l")2
rfind(sub)آخرین وقوع"hello".rfind("l")3
index(sub)مثل find ولی خطا اگر نباشد"hello".index("e")1
count(sub)تعداد وقوع"banana".count("a")3
startswith(prefix)آیا با متن خاص شروع می‌شود؟"hello".startswith("he")True
endswith(suffix)آیا با متن خاص تمام می‌شود؟"hello".endswith("lo")True
in (عملگر)وجود زیررشته"he" in "hello"True

🔹 جایگزینی و تقسیم

متدتوضیحمثال
replace(old, new)جایگزین کردن"one one".replace("one","two")"two two"
split(sep)جدا کردن به لیست"a,b,c".split(",")['a','b','c']
rsplit(sep, n)از راست جدا می‌کند"a,b,c".rsplit(",",1)['a,b','c']
()splitlinesجدا کردن بر اساس خط"line1\nline2".splitlines()['line1','line2']
join(list)اتصال لیست به رشته"-".join(['a','b','c'])"a-b-c"

🔹 بررسی نوع کاراکتر

متدتوضیحمثال
()isalnumفقط حروف یا عدد"abc123".isalnum()True
()isalphaفقط حروف"abc".isalpha()True
()isdigitفقط عدد"123".isdigit()True
()isnumericعددی (شامل یونیکد)"½".isnumeric()True
()isspaceفقط فاصله" ".isspace()True
()istitleهر کلمه با حرف بزرگ"Hello World".istitle()True
()islowerهمه حروف کوچک"hello".islower()True
()isupperهمه حروف بزرگ"HELLO".isupper()True

🔹 هم‌تراز کردن متن

متدتوضیحمثال
center(width, fill)وسط‌چین"Hi".center(10, "-")"----Hi----"
ljust(width, fill)چپ‌چین"Hi".ljust(10, ".")"Hi........"
rjust(width, fill)راست‌چین"Hi".rjust(10, ".")"........Hi"
zfill(width)پر کردن با صفر"42".zfill(5)"00042"

✅ نکات

  • این متدها روی یک رشته جدید کار می‌کنند؛ رشته اصلی در پایتون immutable است.

  • بیشتر متدها پارامتر اختیاری برای کاراکتر دلخواه دارند (مثلاً ('*')strip).

  • برای کارایی بهتر هنگام تغییرات زیاد روی متن‌های طولانی، گاهی استفاده از ()join و ساخت لیست کاراتر است.

💡 خلاصه:
پایتون ده‌ها متد داخلی برای رشته‌ها دارد که شامل تغییر حروف، جستجو، جایگزینی، تقسیم، اتصال، بررسی نوع کاراکتر و قالب‌بندی متن است. این متدها نیازهای متداول کار با متن را به‌سادگی و بدون کتابخانهٔ اضافی برطرف می‌کنند.