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

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


متد های رشته ای

متد های رشته ای در جاوا اسکریپت می توانند در کار با رشته ها به ما کمک کنند. مقادیر اولیه همچون "John Doe" نمی توانند دارای پروپرتی و یا متد باشند، زیرا آنها objects نیستند. اما با استفاده از زبان جاوا اسکریپت متدها و پروپرتی ها برای مقادیر اولیه در دسترس خواهند بود، زیرا جاوا اسکریپت با مقادیر اولیه همچون یک object رفتار میکند.


اندازه یک رشته

<p id="demo"></p>

<script>
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
document.getElementById("demo").innerHTML = txt.length;
</script>

خروجی نمونه مثال بالا :

26

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

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

<p id="demo"></p>

<script>
var str = "Please locate where 'locate' occurs!";
var pos = str.indexOf("locate");
document.getElementById("demo").innerHTML = pos;
</script>

خروجی نمونه مثال بالا :

7

 

نکته : جاوا اسکریپت شمارش را از مقدار صفر شروع خواهد کرد. صفر اولین رخداد در رشته بوده و به همین ترتیب 1 و 2 دومین و سومین رخداد خواهند بود.

 

با استفاده از متد ()lastIndexOf می توان آخرین رخداد یک متن را در یک رشته به دست آورد :

<p id="demo"></p>

<script>
var str = "Please locate where 'locate' occurs!";
var pos = str.lastIndexOf("locate");
document.getElementById("demo").innerHTML = pos;
</script>

خروجی نمونه مثال بالا :

21

هر دو متد ()indexOf و ()lastIndexOf در صورتی که متن مورد نظر را پیدا نکنند، مقدار 1- را برمیگردانند :

<p id="demo"></p>

<script>
var str = "Please locate where 'locate' occurs!";
var pos = str.indexOf("John");
document.getElementById("demo").innerHTML = pos;
</script>

خروجی نمونه مثال بالا :

-1

هر دو متد ذکر شده در بالا می توانند پارامتر دومی را بگیرند که نقطه شروع جستجو را مشخص می کند :

<p id="demo"></p>

<script>
var str = "Please locate where 'locate' occurs!";
var pos = str.indexOf("locate",15);
document.getElementById("demo").innerHTML = pos;
</script>

خروجی نمونه مثال بالا :

21

جستجوی یک متن در یک رشته

با استفاده از متد ()search میتوان یک متن را در یک رشته مشخص جستجو کرد. این متد مکان اولین رخداد متن مورد نظر را برمیگرداند. این متد پارامتر دومی ندارد :

<p id="demo"></p>

<script>
var str = "Please locate where 'locate' occurs!";
var pos = str.search("locate");
document.getElementById("demo").innerHTML = pos;
</script>

خروجی نمونه مثال بالا :

7

استخراج قسمتی از یک رشته

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

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

متد ()slice

با استفاده از متد ()slice می توان قسمتی از یک رشته را استخراج کرد و سپس رشته استخراج شده در یک رشته جدید قرار میگیرد. این متد دو پارامتر می پذیرد : مکان نقطه شروع و مکان نقطه پایان.

در نمونه مثال زیرقسمتی از رشته که بین مکان 7 تا 13 است، برگردانده میشود :

<p id="demo"></p>

<script>
var str = "Apple, Banana, Kiwi";
var res = str.slice(7,13);
document.getElementById("demo").innerHTML = res; 
</script>

خروجی نمونه مثال بالا :

Banana

در متد ()slice اگر پارامترها اعداد منفی باشند شمارش از آخر آغاز می شود :

<p id="demo"></p>

<script>
var str = "Apple, Banana, Kiwi";
var res = str.slice(-12,-6);
document.getElementById("demo").innerHTML = res;
</script>

خروجی نمونه مثال بالا :

Banana

در صورتیکه پارامتر دوم را مشخص نکنید متد مورد نظر تا انتهای رشته را در نظر میگیرد :

<p id="demo"></p>

<script>
var str = "Apple, Banana, Kiwi";
var res = str.slice(7);
document.getElementById("demo").innerHTML = res;
</script>

خروجی نمونه مثال بالا :

Banana, Kiwi

در نمونه مثال زیر از عدد منفی به عنوان آرگومان استفاده شده است :

<p id="demo"></p>

<script>
var str = "Apple, Banana, Kiwi";
var res = str.slice(-12) 
document.getElementById("demo").innerHTML = res;
</script>

خروجی نمونه مثال بالا :

Banana, Kiwi

 

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


متد ()substring

()substring عملکردی شبیه به متد ()slice دارد، تنها تفاوت آن این است که ()substring نمیتواند مقدار منفی بگیرد :

<p id="demo"></p>

<script>
var str = "Apple, Banana, Kiwi";
var res = str.substring(7,13);
document.getElementById("demo").innerHTML = res;
</script>

خروجی نمونه مثال بالا :

Banana


اگر در متد ()substring پارامتر دوم را در نظر نگیریم تا انتهای رشته در نظر گرفته میشود.


متد ()substr

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

<p id="demo"></p>

<script>
var str = "Apple, Banana, Kiwi";
var res = str.substr(7,6);
document.getElementById("demo").innerHTML = res;
</script>

خروجی نمونه مثال بالا :

Banana

در صورتی که پارامتر دوم را برای متد ()substr در نظر نگیریم، تا انتهای رشته در نظر گرفته میشود :

<p id="demo"></p>

<script>
var str = "Apple, Banana, Kiwi";
var res = str.substr(7);
document.getElementById("demo").innerHTML = res;
</script>

خروجی نمونه مثال بالا:

Banana, Kiwi

در صورتی که پارامتر اول یک عدد منفی باشد شمارش از انتهای رشته شروع خواهد شد :

<p id="demo"></p>

<script>
var str = "Apple, Banana, Kiwi";
var res = str.substr(-4);
document.getElementById("demo").innerHTML = res;
</script>

خروجی نمونه مثال بالا :

Kiwi

 

منتشر شده در ۱۳ آذر ۱۳۹۷ حمید رضا ملکی ۶۶ بازدید
دیدگاه ها

هنوز دیدگاهی ثبت نشده

برای ارسال دیدگاه لازم است ابتدا وارد سایت شوید