יום רביעי, 14 באוגוסט 2013

“unrecognized escape sequence” בביטוי regex

רציתי להסיר את כל התווים המיוחדים במחרוזת, ולהשאיר את הרווחים, לכך השתמשתי בביטוי הרגולרי:
 
[^\w\d+ ]
שמשמעותו: ^ - לשלילה
w\ - כולל כל האותיות (word), גם העבריות
d\ - כולל כל הספרות (digit)
+ - הוספה של תו
 " " - ריווח

למעשה, הוא תופס את כל התווים המיוחדים, למעט רווח, שהוא משאיר.

בפועל, הקוד
string regExp = @"[^\w\d+ ]";
onlyText = Regex.Replace(onlyText,regExp, "");

למה הוספתי @?
כי זו השגיאה שקיבלתי בלעדיו  unrecognized escape sequence (רצף לא מזוהה).

נ.ב. בודק regex מעולה, הרבה אפשרויות, כולל מילון עם רצפים מוכנים

אין תגובות:

הוסף רשומת תגובה