شمارش تعداد تکرار یک کاراکتر در یک متن در جاوااسکریپت
Count the number of occurrences of a character in a string in JavaScript
چطور میتونم تعداد دفعاتی که یک کاراکتر خاص در یک متن ظاهر میشه رو تو جاوااسکریپت بشمارم؟
مثلاً تو رشته str1,str2,str3,str4
میخوام تعداد کاماها (,
)، که ۳ هست، رو بشمارم.
برای شمارش تعداد تکرار یک کاراکتر خاص در یک رشته، چند روش رایج وجود داره که بهترین و سادهترین روش رو توضیح میدم:
استفاده از split
: این روش رشته رو بر اساس کاراکتر مشخص شده تقسیم میکنه و بعد تعداد اجزای حاصل رو یکی کم میکنه تا تعداد کاراکترها رو بدست بیاره:
const count = mainStr.split(',').length - 1; console.log(count); // 3
استفاده از match
و Regex: این روش از یک عبارت منظم برای پیدا کردن و شمارش کاراکتر استفاده میکنه:
const count = (mainStr.match(/,/g) || []).length; console.log(count); // 3
هر دو روش عملکرد خوبی دارن، اما روش دوم خوانایی بیشتری داره. اگر نیاز به کارایی بیشتر دارید، روش split()
تو اکثر موارد سریعتره، مخصوصاً در مرورگرهای مدرن.