כיצד להסיר רווח לבן ממחרוזות עם strtrim() בתכנות C

Kyzd Lhsyr Rwwh Lbn Mmhrwzwt M Strtrim Btknwt C



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

מהי פונקציית strtrim()?

שפת המחשב C מגיעה עם פונקציה מובנית בשם strtrim() . תווי רווח לבנים בתחילת וסיום של מחרוזת מוסרים. המחרוזת שיש לקצץ היא הקלט היחיד שניתן לפונקציה. המחרוזת המקורית אינה משתנה; במקום זאת, מחרוזת חדשה נוצרת על ידי הסרת הרווח הלבן. המחרוזת החדשה מוחזרת על ידי הפונקציה.

ה strtrim() הפונקציה מוגדרת ב- קובץ כותרת ב-C. The strtrim() הפונקציה מסירה רווחים לבנים מובילים ונגררים מהמחרוזת. אנו יכולים להשתמש בפונקציה זו בתוכנית שלנו כדי לוודא שכל הרווחים הלבנים נחתכו במחרוזות שלנו.







כיצד להסיר רווח לבן ממחרוזות עם strtrim() בתכנות C

התחביר עבור ה strtrim() הפונקציה ב-C מוגדרת כך:



לְהַשְׁחִיר * strtrim ( לְהַשְׁחִיר * str )

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



כדי להתחיל, ה strtrim() הפונקציה סופרת את מספר תווי הרווח הלבן בתחילת המחרוזת. לאחר מכן נספרת כמות התווים הלבנים בקצה המחרוזת. התווים שאינם רווחים מוכנסים לאחר מכן בין שתי הקבוצות של תווי רווח לבן כדי ליצור מחרוזת חדשה.





הנה דוגמה לשימוש ב- strtrim() פוּנקצִיָה:

#include

#include

#include

לְהַשְׁחִיר * strtrim ( לְהַשְׁחִיר * str ) {

size_t len ​​= strlen ( str ) ;

אם ( רק == 0 ) {

לַחֲזוֹר str;

}

size_t start = 0 ;

בזמן ( isspace ( str [ הַתחָלָה ] ) ) {

התחל++;

}

size_t end = len - 1 ;

בזמן ( isspace ( str [ סוֹף ] ) ) {

סוֹף--;

}

size_t i;

ל ( אני = 0 ; אני < = סוף - התחלה; i++ ) {

str [ אני ] = str [ התחל + i ] ;

}

str [ אני ] = '\0' ;

לַחֲזוֹר str;

}

int main ( ) {

char str [ ] = 'רמז לינוקס' ;

printf ( 'לפני חיתוך:' % ס ' \n ' , str ) ;

strtrim ( str ) ;

printf ( 'לאחר חיתוך:' % ס ' \n ' , str ) ;

לַחֲזוֹר 0 ;

}

ה strtrim() הפונקציה מסירה כל רווח לבן מתחיל או סיום ממחרוזת כאשר היא ניתנת למחרוזת כקלט (כגון רווחים ריקים, טאבים, שורות חדשות וכו'). לאחר החלת שינויים במקום על מחרוזת הקלט, הפונקציה מחזירה מצביע לטקסט המעודכן. בפונקציה הראשית, אנו מגדירים את המחרוזת str, שיש לה רווח לבן מוביל ונמשך. לאחר ביצוע ה strtrim() הפונקציה ב-str, המחרוזות המקוריות והחתומות מודפסות לאחר מכן באמצעות printf().



תְפוּקָה

סיכום

עיבוד נתוני טקסט יכול להיות די קשה כאשר עוסקים ברווח לבן. עם זאת, אנו יכולים להסיר במהירות וביעילות רווח לבן ממחרוזות באמצעות ה-C strtrim() פוּנקצִיָה. הפונקציה פשוטה לשימוש והיא תואמת לרוב התוכניות המעבדות מחרוזות. בלי צורך להסיר ידנית תווי רווח לבן, זה מקל על העריכה והחזרות.