Oct
6

نحوه استخراج عدد از رشته با استفاده از PHP

10/06/2023 01:37 AM توسط Admin که در Php


در PHP، می توانید اعداد را از یک رشته با استفاده از عبارات منظم و تابع «preg_match_all()» استخراج کنید. در اینجا مثالی از نحوه استخراج همه اعداد از یک رشته آورده شده است:

$my_string = "There are 15 Oranges and 3 Bananas.";
preg_match_all('/[0-9]+/', $my_string , $matches);
print_r($matches[0]);

این خروجی خواهد داشت:

Array ( [0] => 15 [1] => 3 )

توضیحات:

  • عبارت منظم /[0-9]+/ یک یا چند رقم متوالی را جستجو می کند.
  • تابع 'preg_match_all()' رشته را برای همه رخدادهای عبارت منظم جستجو می کند و مطابقت ها را در آرایه $matches ذخیره می کند.
  • تابع print_r() برای نمایش محتویات آرایه استفاده می شود.

همچنین می‌توانید از تابع «preg_replace()» برای حذف کاراکترهای غیر عددی از یک رشته استفاده کنید و فقط اعداد را نگه دارید:

$string = "There are 15 Oranges and 3 Bananas.";
$numbers = preg_replace('/D/', '', $string);
echo $numbers;

این خروجی خواهد داشت:

15 3

توضیحات:

  • عبارت منظم «/D/» با هر کاراکتر غیر رقمی مطابقت دارد.
  • تابع preg_replace() همه کاراکترهای غیر رقمی را با یک رشته خالی جایگزین می کند و عملاً آنها را از رشته حذف می کند.

یک راه دیگر وجود دارد که با این حال مانند دو گزینه بالا قابل اعتماد نیست. ما می توانیم از تابع داخلی PHP `filter_var() برای استخراج int از رشته استفاده کنیم.

$string = "There are 15 Oranges and 3 Bananas.";
// extract numbers from string
$my_int = (int)filter_var($string ,FILTER_SANITIZE_NUMBER_INT);
echo $my_int;

این خروجی خواهد داشت:

153

اندیشه های تو

جستجو کردن
حامی مالی
CRYPTWATCH
ما را دنبال کنید
اطلاعیه ها

ابزار جدید اضافه شد: ماشین حساب ابعاد بزرگنمایی SVG.

حامی مالی