یک برنامهی جاوا بنویسید که با استفاده از کلاسهای Pattern و Matcher، تمام آدرسهای ایمیل موجود در یک متن ورودی را پیدا کرده و در خروجی چاپ کند.
13.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:57 0.0
برای حل مسئله یک الگوی مناسب برای ایمیل تعریف کنید (مثلاً "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}")، سپس با Pattern.compile(regex, Pattern.CASE_INSENSITIVE) الگو را بسازید و با pattern.matcher(input) یک Matcher ایجاد کنید؛ در ادامه با حلقه while(matcher.find()) از matcher.group() برای گرفتن و چاپ هر ایمیل استفاده کنید. نکات: در رشتههای جاوا برای نمادهای ویژه از \\ استفاده کنید (مثلاً "\\." برای نقطه)، ورودی خالی یا null را مدیریت کنید و در صورت نیاز ایمیلها را در یک لیست جمعآوری کنید تا بعداً پردازش یا چاپ شوند.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکته مهم این است که الگوی ایمیل نباید خیلی ساده باشد؛ استفاده از یک regex مناسب معمولاً اکثر ایمیلها را میپوشاند اما برخی موارد خاص را ممکن است از دست بدهد. هنگام نوشتن regex در Java، کاراکترهای خاص را با دو بکاسلش Escape کنید (مثلاً "\\." برای نقطه) و از Pattern.CASE_INSENSITIVE استفاده کنید تا ایمیلها بدون توجه به حروف بزرگ یا کوچک یافت شوند. همچنین ورودی میتواند null یا خالی باشد، پس قبل از جستجو آن را چک کنید و نتایج را در یک لیست جمعآوری کنید تا بعداً چاپ یا پردازش شوند. در نهایت با حلقه while (matcher.find()) میتوانید هر ایمیل را با matcher.group() استخراج و چاپ کنید.
گزارش