מציאת תו שחוזר על עצמו ברציפות- JS
-
אני מחפש את הדרך הכי נכונה וקלה למצוא בתוך סטרינג, תו שחוזר על עצמו ברציפות יותר מ X פעמים.
(נניח ננננננננ).
אבל רק תוים בעברית ובאנגלית.איני מכיר REGEX כלל, אבל לא אכפת לי גם בכיוון הזה. אדרבה, צריך להיכנס קצת לעניין.
-
@yossiz ענה מצויין.
- אתה מחליט איזה סוג תווים אתה מחפש ושם בסוגריים מרובעות, וזה מייצג תו בודד מהסוג שלהם.
(אני חושב שבאת לאפוקי רווחים וא"כ \S מייצג כל תו שאיננו תו רווח וקפיצת שורה וכדומה) - את הסוגריים המרובעות אתה עוטף בעגולות כדי להגדיר את התו שיימצא כקבוצה, ואז אתה כותב \1 שזה אומר קבוצה 1 כלומר שיהיה מייד אחרי התו שנמצא עוד תו בדיוק כמותו, וזה אומר שתיים אותו הדבר.
- ובשביל לתפוס גם עשר כאלה וגם כדי להגדיר מינימום אתה שם אחרי ה\1 סוגריים מסולסלים של כמות, הפרמטר הראשון זה מינימום (אם אתה רוצה אפילו שתיים אז צריך לשים 1 כי אחד כבר היה מצד הקבוצה) הפרמטר השני משאירים ריק כי אין הגבלת מקסימום.
הקוד JS אמור להיראות ככה:
var str = "abc ccc ddd frfsdfsd456565"; var regex = /(\S)\1{1,}/g; var m = null; while((m = regex.exec(str)) != null) console.log(m); - אתה מחליט איזה סוג תווים אתה מחפש ושם בסוגריים מרובעות, וזה מייצג תו בודד מהסוג שלהם.
-
אוקי. האתר הזה מעולה. מסביר מאוד.
תודה רבה.
5/6