OnWorks Linux ו-Windows Online WorkStations

לוגו

אירוח מקוון בחינם עבור תחנות עבודה

<הקודם | תוכן | הבא>

? - התאם אלמנט אפס או פעם אחת

מכמת זה פירושו, למעשה, "הפוך את האלמנט הקודם לאופציונלי." נניח שרצינו לבדוק תוקף של מספר טלפון וחשבנו שמספר טלפון תקף אם הוא תואם לאחת משתי הצורות הבאות:

(nnn) nnn-ננן ננן ננן-nnnn

איפה "n" היא ספרה. נוכל לבנות ביטוי רגולרי כך:

^\(?[0-9][0-9][0-9]\)? [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$

בביטוי זה, אנו עוקבים אחר התווים בסוגריים עם סימני שאלה כדי לציין שיש להתאים אותם לאפס או פעם אחת. שוב, מכיוון שהסוגריים הם רגילים


מטא-תווים (ב-ERE), אנו מקדימים אותם עם קווים אחוריים כדי לגרום להם להתייחס כאל מילוליים במקום זאת.

בואו ננסה את זה:



[me@linuxbox ~]$ הד "(555) 123-4567" | grep -E '^\(?[0-9][0-9][0-9]

\)? [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$'

(555) 123-4567

[me@linuxbox ~]$ הד "555 123-4567" | grep -E '^\(?[0-9][0-9][0-9]\)

? [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$'

555 123-4567

[me@linuxbox ~]$ הד "AAA 123-4567" | grep -E '^\(?[0-9][0-9][0-9]\)

? [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$'

[me@linuxbox ~]$

[me@linuxbox ~]$ הד "(555) 123-4567" | grep -E '^\(?[0-9][0-9][0-9]

\)? [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$'

(555) 123-4567

[me@linuxbox ~]$ הד "555 123-4567" | grep -E '^\(?[0-9][0-9][0-9]\)

? [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$'

555 123-4567

[me@linuxbox ~]$ הד "AAA 123-4567" | grep -E '^\(?[0-9][0-9][0-9]\)

? [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$'

[me@linuxbox ~]$


כאן אנו רואים שהביטוי תואם את שתי הצורות של מספר הטלפון, אך אינו מתאים לאחת המכילה תווים לא מספריים.


מחשוב ענן מערכת ההפעלה המוביל ב-OnWorks: