הסרת מרכאות ממחרוזת

JavaScript:
הסרת מרכאות ממחרוזת

איך לעשות:

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

let quotedString = "\"שלום, עולם!\"";
let unquotedString = quotedString.replace(/^"|"$/g, '');
console.log(unquotedString); // פלט: שלום, עולם!

ואם אתה מתמודד עם מרכאות יחידות? רק תשתף את הביטוי הרגולרי קצת:

let singleQuotedString = "'שלום, עולם!'";
let unquotedString = singleQuotedString.replace(/^'|'$/g, '');
console.log(unquotedString); // פלט: שלום, עולם!

או מה אם המחרוזת שלך היא מיקס של שניהם? אין בעיה:

let mixedQuotedString = "\"'שלום, עולם!'\"";
let unquotedString = mixedQuotedString.replace(/^["']|["']$/g, '');
console.log(unquotedString); // פלט: 'שלום, עולם!'

עיון מעמיק

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

חלופות ל.replace()? בטח! אתה יכול לפצל ולחבר מחדש מחרוזת על בסיס מרכאות, להשתמש בslice אם אתה בטוח במיקומי המרכאות שלך, או אפילו בצירוף regex להוציא את הטקסט הדרוש. הכול תלוי בהקשר.

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

ראה גם

תחקור עומק יותר את עיבוד מחרוזות וביטויים רגולריים: