در C# یک متد بنویسید که یک لیست از رشتهها و یک پیشوند ورودی دریافت کرده و تعداد رشتههایی را برگرداند که پس از حذف فاصلههای ابتداییشان با آن پیشوند (بدون توجه به بزرگی/کوچکی حروف) شروع میشوند—این پیشوند میتواند مثلاً "func" (برای مفسرها)، "Player:" (برای بازیها) یا "https://" (برای وب) باشد.
1.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:07 0.0
برای حل، روی هر رشته TrimStart() اجرا کنید تا فاصلههای ابتدایی حذف شوند، سپس از String.StartsWith(prefix, StringComparison.OrdinalIgnoreCase) برای بررسی شروع رشته استفاده کنید؛ میتوانید با یک حلقه ساده یا با LINQ (مثلاً lines.Count(s => s != null && s.TrimStart().StartsWith(prefix, StringComparison.OrdinalIgnoreCase))) پیادهسازی کنید. مراقب مقدارهای null باشید و در محیطهایی مثل مفسرها (تشخیص اعلان توابع)، بازیسازها (تشخیص خط دیالوگ بازیکن) یا وب (تشخیص آدرسهای شروعشونده با https) این روش کاربردی است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای جلوگیری از استثناهای ناخواسته، وجود مقدار null را چک کنید و از s?.TrimStart() یا شرط صریح s != null استفاده کنید. از StartsWith(prefix, StringComparison.OrdinalIgnoreCase) برای مقایسه بدون توجه به بزرگی/کوچکی حروف بهره ببرید تا نتیجهی همسان باشد. توجه کنید که TrimStart() تنها فضاهای ابتدایی را حذف میکند و اگر بخواهید کاراکترهای خاصی را نیز حذف کنید باید پارامترهای مناسب به آن بدهید. همچنین برای کار با چند پیشوند میتوانید از همان منطق با Linq یا حلقهٔ ساده استفاده کنید و به کارایی نگاه کنید.
گزارش