PDA

View Full Version : regex برای اعداد اعشاری



reza_Nazem
سه شنبه 15 آذر 1390, 12:45 عصر
من یک عبارت منظم برای عددی با فرمت زیر می خواهم
1 – تمام اعداد صحیح را که بدون اعشار هستند قبول کند
2-اعداد اعشاری با حد اکثر دو رقم اعشار را قبول کند

mehdi.mousavi
چهارشنبه 23 آذر 1390, 12:29 عصر
من یک عبارت منظم برای عددی با فرمت زیر می خواهم
1 – تمام اعداد صحیح را که بدون اعشار هستند قبول کند
2-اعداد اعشاری با حد اکثر دو رقم اعشار را قبول کند

سلام.
می تونید از این الگو استفاده کنید:


^\d+(?:.\d{1,2})$

موفق باشید.

linux
پنج شنبه 24 آذر 1390, 00:46 صبح
سلام.
می تونید از این الگو استفاده کنید:


^\d+(?:.\d{1,2})$

موفق باشید.

عدی های منفی بازی نیستند؟

خوب حالا اگر قرار باشد در یک نوشته مثلا 1000 خطی بدنبال اعداد بگردیم فقط اولین عدد آنم در صورتی که خط اول عدد باشد و بعدش هم چیزی نباشد انتخاب می شود

mehdi.mousavi
پنج شنبه 24 آذر 1390, 01:44 صبح
عدی های منفی بازی نیستند؟ خوب حالا اگر قرار باشد در یک نوشته مثلا 1000 خطی بدنبال اعداد بگردیم فقط اولین عدد آنم در صورتی که خط اول عدد باشد و بعدش هم چیزی نباشد انتخاب می شود

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


(?<=\x20?)(?:\-?)\d+(?:\.\d{1,2})?

Regular Expression فوق، میتونه اعداد زیر رو از این متن استخراج کنه:


wkjrh kjhr4 2 -506 kjrh ewkjhr 8945609 wlekjr lkj
-45.56 welkrj wler 6565.89 -67.45 lkwej rlkwje rlk
wkejrh kjwher kjwhe rkjh k 3.4

اعداد استخراج شده:


4
2
-506
8945609
-45.56
6565.89
-67.45
3.4

موفق باشید.

linux
پنج شنبه 24 آذر 1390, 11:03 صبح
شاید برای خیلی ها ساختن این regx خیلی سخت باشد یک ابزاری هست از اینجا می توانید دانلود کنید Expresso 3.0 (http://www.ultrapico.com/ExpressoSetup3.msi)