JavaRush /בלוג Java /Random-HE /ביטויים רגולריים: מצא מילה/חלק ממילה
eGarmin
רָמָה

ביטויים רגולריים: מצא מילה/חלק ממילה

פורסם בקבוצה
אם אתה צריך למצוא מילה או מחרוזת משנה, פתרון טוב הוא להשתמש באופרטור הפקד מתוך ערכת הכלים של הביטוי הרגולרי . זה הכרחי כאשר אתה צריך למצוא משהו שאחרי משהו אחר.
דוגמה פשוטה
String str = "программируем"; Pattern p = Pattern.compile(".*программ(?=ируем).*"); Matcher m = p.matcher(str); if(m.matches()){ System.out.println("Нашел!"); }else{ System.out.println("Не нашел!"); }
1. חפש מלפנים
בדוגמה למעלה, אם אתה צריך למצוא "תכנות", אבל לא צריך לחפש "תכנות", עליך להשתמש בתבנית הבאה: .*программ(?=ируем).* ?= - חפש לפני נוכחות של מילה/חלק ממילה; ?! – חפש מלפנים את היעדר מילה/חלק ממילה.
2. חפש מאחור
חיפוש מאחור עובד בצורה דומה. עליך להשתמש ב-?<= כדי לחפש מילה/חלק ממילה מאחוריה ו-? .*(?<=programs)we.* המילה "תוכנית" תואמת את הדפוס הזה, אבל המילה "פוליש" לא.
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION