دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۲
  • آبان

جلسه ۱۶ : توابع کار با رشته ها در جاوا اسکریپت

  • دسته‌بندی‌ها :
جلسه ۱۶ : توابع کار با رشته ها در جاوا اسکریپت
    • جزئیات
    • نوع محتواآموزش تصویری

      با عرض سلام خدمت کاربران محترم سایت پی وی لرن.
      در این جلسه قصد داریم تا با توابع کار با رشته ها در جاوا اسکریپت JavaScript آشنا شویم. در این جلسه به موضوعاتی همچون بدست آوردن طول رشته در جاوا اسکریپت ، تابع replace در جاوا اسکریپت ، تبدیل حروف کوچک به بزرگ در جاوا اسکریپت ، تبدیل رشته به آرایه در جاوا اسکریپت و … می پردازیم

      متدهای string در جاوا اسکریپت کار با رشته ها را آسان تر می کند.

      نوابع کار با رشته ها در جاوا اسکریپت

      Properties و متد های String

      داده های نوع اولیه مثل “hello” نمی توانند پروپرتی و تابعی داشته باشند زیرا شئ نیستند.

      اما در جاوا اسکریپت این پروپرتی و متد ها برای داده های نوع اولیه نیز وجود دارند زیرا هنگام اجرای متد ها یا پروپرتی آن ها جاوا اسکریپت مانند یک شد با آن ها رفتار می کند.

      بدست آوردن طول رشته در جاوا اسکریپت

      برای بدست آوردن طول رشته در جاوا اسکریپت باید از پروپرتی length استفاده کنیم:

      مثال : طول رشته ها
      خودتان امتحان کنید »

      پیدا کردن مکان یک رشته در رشته ای دیگر

      برای پیدا کردن مکان یک رشته از تابع ()indexOf استفاده می کنیم که موقیت اولین کاراکتر رشته مشخص شده را بر می گرداند:

      مثال : متد indexof
      خودتان امتحان کنید »

      توجه داشته باشید که شماره اندیس ۰ می باشد و در نتیجه شمارش از صفر شروع می شود.

      تابع ()lastIndexOf موقعیت اولین کاراکتر آخرین رشته مشخص شده را بر می گرداند:

      مثال : متد lastindexof
      خودتان امتحان کنید »

      هر دو تابع فوق اگر رشته را پیدا نکردن -۱ را بر میگردانند.

      مثال : نتیجه پیدا نکردن
      خودتان امتحان کنید »

      هر دو روش پارامتر دوم را به عنوان موقعیت شروع جستجو می پذیرد:

      مثال : مثال دوم
      خودتان امتحان کنید »

      جستجوی یک رشته در رشته ای دیگر

      از تابع ()search برای جستجوی رشته در دشته ای دیگر استفاده می شود.
      این تابع نیز موقعیت اولین کاراکتر رشته مورد نظر را بر می گرداند.

      مثال : جستجوی یک رشته در یک رشته ی دیگر
      خودتان امتحان کنید »

      ۳ تابع برای استخراج متن از رشته در جاوا اسکریپت وجود دارد:

      • (slice(start, end
      • (substring(start, end
      • (substr(start, length

      تابع ()slice

      این تابع بخش از رشته را استخراج کرده و به عنوان یک رشته جدید بر می گرداند.

      تابع دو پارامتر می گیرد: اندیس آغازین (start) و اندیس پایانی (end)

      مثال:

      مثال : تابع slice
      خودتان امتحان کنید »

      خروجی به شکل زیر خواهد بود:

      مثال : 

      اگر پارامتر ها منفی باشند، شمارش از انتهای رشته شروع می شود:

      مثال : نمونه دوم تابع slice
      خودتان امتحان کنید »

      اگر پارامتر دوم end را مشخص نکنید، تابع رشته ای از موقعیت مشخص شده تا انتهای رشته را بر می گرداند.

      این مثال یک بخشی از یک رشته را از موقعیت ۱۲ -۶ به موقعیت -۶ منتقب=ل می کند :

      مثال : جدا کردن بخشی از رشته
      خودتان امتحان کنید »

      اگر پارامتر دوم را حذف کنید، متد دیگر بقیه ی رشته را برش می دهد:

      مثال : جدا کردن بخشی از رشته
      خودتان امتحان کنید »

      یا از انتهای شمارش:

      مثال : جدا کردن ازانتها
      خودتان امتحان کنید »

      نکته : موقعیت های منفی در Internet Explorer 8 و قبل از آن کار نمی کنند.

      تابع ()substring

      این تابع مثل تابع ()slice می باشد با این تفاوت که پارامتر منفی نمی تواند بگیرد.

      مثال : متد substring
      خودتان امتحان کنید »

      اگر شما حذف پارامتر دوم را انجام دهید، ()substring بقیه رشته را جداخواهد کرد.

      تابع ()substr

      این تابع نیز مانند تابع ()slice می باشد با این تفاوت که پارامتر دوم طول رشته بدست آمده را مشخص می کند:

      مثال : متد substr
      خودتان امتحان کنید »

      اگر شما حذف پارامتر دوم را انجام دهید، ()substring بقیه رشته را جدا خواهد کرد.

      مثال : متد substr1
      خودتان امتحان کنید »

      اگر پارامتر اول منفی سمت از پایان رشته محاسبه می شود.

      مثال : پارامتر منفی
      خودتان امتحان کنید »

      تابع replace در جاوا اسکریپت

      تابع ()replace در جاوا اسکریپت یک مقدار را با مقداری دیگر در رشته جایگزین می کند:

      مثال : متد replace
      خودتان امتحان کنید »

      خروجی به شکل زیر خواهد بود:

      مثال : 

      تابع replace در جاوا اسکریپت رشته اصلی را تغییر نخواهد داد و نتیجه را در یک رشته جدید برمی گرداند.

      تابع replace در جاوا اسکریپت به صورت پیش فرض اولین متن یافت شده را جایگزین می کند.

      برای جایگزین کردن تمام رشته های پیدا شده از g/ استفاده کنید:

      مثال : جایگزینی رشته ها
      خودتان امتحان کنید »

      به طور پیش فرض، تابع ()replace حساس است. نوشتن مایکروسافت (با حروف بزرگ) کار نمی کند:

      مثال : حساسیست به حروف
      خودتان امتحان کنید »

      برای رفع حساسیت به حروف از یک regular expression با فرمت i/ استفاده کنید :

      مثال : رفع حساسیت به حروف
      خودتان امتحان کنید »

      نکته : توجه داشته باشید که عبارات منظم بدون نقل قول نوشته شده است.

      برای جایگزینی تمام کاراکترهای مچ شده از یک regular expression با فرمت g/ استفاده کنید :

      مثال : جایگزینی تمام نتایج مچ شده
      خودتان امتحان کنید »

      تبدیل حروف کوچک به بزرگ در جاوا اسکریپت و بالعکس

      تابع ()toUpperCase تمام حروف یک رشته را به حروف بزرگ تغییر می هد:

      مثال : تبدیل به حروف بزرگ
      خودتان امتحان کنید »

      نتیجه به شکل زیر خواهد بود:

      مثال : 

      تابع ()toLowerCase تمام حروف یک رشته را به حروف کوچک تبدیل می کند:

      مثال : تبدیل به حروف کوچک
      خودتان امتحان کنید »

      نتیجه به شکل زیر خواهد بود:

      مثال : 

      متد ()concat

      مثال : ادغام دو یا چند رشته
      خودتان امتحان کنید »

      متد ()concat می تواند مورد استفاده قرار گیرد به جای عملگر + ، این دو خط کد یک کار را انجام  می دهد:

      مثال : 

      تمام متدهای رشته ، رشته ی جدید را بازگشت می دهند. آنها رشته های اصلی را تغییر نمی دهند.
      پس می توان گفت متدهای رشته نمی توانند رشته ها را تغییر دهند، بلکه رشته ی جدید را نتیجه می دهند.

      تابع ()trim

      این تابع تمام کاراکتر های خالی space را از رشته حذف می کند:

      مثال : تابع trim
      خودتان امتحان کنید »

      نکته : متد ()String.trim در Internet Explorer 8 و یا نسخه ی قدیمی تر پشتیبانی نمی شود.

      اگر شما نیاز به استفاده از اینترنت اکسپلورر ۸ دارید، می توانید از String.replace به همراه عبارت زیر استفاده کنید:

      مثال : جایگزینی در مرورگر اینترنت اکسپلورر
      خودتان امتحان کنید »

      شما همچنین می توانید به جای راه حل فوق به اضافه تر و تمیز تابع برای String.prototype جاوا اسکریپت استفاده کنید:

      مثال : متد String.prototype
      خودتان امتحان کنید »

       

      بدست آوردن کاراکتر در رشته

      ۳ روش برای استخراج رشته کاراکتر وجود دارد:

      • (charAt(position
      • (charCodeAt(position
      • دسترسی به خصوصیات[]

      تابع ()charAt یک کاراکتر با موققعیت مشخص شده را در یک رشته بر می گرداند:

      مثال : متد charAt
      خودتان امتحان کنید »

      متد ()charCodeAt

      متد ()charCodeAt در یونیکد کاراکتر در فهرست مشخص شده را بازمی گرداند:

      متد بازگرداندن کد UTF-16 (یک عدد صحیح است بین ۰ و ۶۵۵۳۵):

      مثال : متد charCodeAt
      خودتان امتحان کنید »

      خصوصیت access

      ۵ ECMAScript اجازه می دهد تا با استفاده از براکت [] به کاراکتر مورد نظر در رشته دسترسی پیدا کنید:

      مثال : دسترسی به یک کاراکتر مشخص در رشته
      خودتان امتحان کنید »

      دسترسی به خصوصیات ممکن است کمی غیر قابل پیش بینی باشد:

      • در اینترنت اکسپلورر ۷ و یا اوایل کار نمی کند.
      • باعث می شود رشته های شبیه به آرایهباشند.(اما آرایه نیست).
      • اگر کاراکتری پیدا نشود، در حالی که [] نوع undefined را بازمی گرداند ()charAt رشته ی خالی، بازمی گرداند.
      • فقط خواندنی است، پس “str[0] = “A خطا می دهد.

      مثال : مثال
      خودتان امتحان کنید »

      اگر می خواهید در قالب آرایه با رشته ها کار کنید، شما می توانید آن را به آرایه ای تبدیل کنید.

      تبدیل رشته به آرایه در جاوا اسکریپت

      برای تبدیل رشته به آرایه در جاوا اسکریپت از متد ()split استفاده می کنیم:

      مثال : متد split
      خودتان امتحان کنید »

      خروجی کد بالا کاراکتر a می باشد.

      اگر جداکننده “” باشد، آرایه برگشتی یک آرایه تک کاراکتری خواهد بود:

      مثال : نمونه دوم split
      خودتان امتحان کنید »

      خروجی کد بالا به شکل زیر می باشد:

      مثال : 

      اگر جدا کننده مشخص شده در رشته وجود نداشته باشد، کل رشته در اندیس ۰ قرار می گیرد:

      مثال : 

      خروجی به شکل زیر می باشد:

      مثال : 

      جلسه توابع کار با رشته ها در جاوا اسکریپت نیز به پایان رسید.
      در جلسه آینده به آرایه ها در جاوا اسکریپت خواهیم پرداخت.با ما همراه باشید

      QR:  جلسه ۱۶ : توابع کار با رشته ها در جاوا اسکریپت
      به اشتراک بگذارید


      دیدگاه کاربران
      1. تصویر کاربر