נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
תיכנות
RSS UnderWarrior Forums : RSS תיכנות
נושא

נושא: שאלה בסיסית בC#

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
Madam
משתמש מתחיל
משתמש מתחיל


הצטרף / הצטרפה: 15 January 2007
משתמש: מנותק/ת
הודעות: 27
נשלח בתאריך: 01 February 2007 בשעה 02:00 | IP רשוּם
ציטוט Madam

שלום,
ניסיתי לכתוב פונקציה שמקבלת מחרוזת ואות, כשהפונקציה תעבור על כל תו ותבדוק האם הוא שווה לאות. במידה והתו שווה לאות, המחרוזת תחליף את האות במחרוזת באותה אות רק בcase אחר. לדוג'- עבור מחרוזת "stringS" והתו s תוחזר המחרוזת Strings

ניסיתי לפתור כך:

string str = "gioiGag";
            char ch = 'g';
            Console.WriteLine(str);
            string res = checkandreplace(str, ch);
        }
        static string checkandreplace(string str, char ch)
        {
            ch = ch.ToUpper();
            string letter = ch.ToString();//for comparing it to other string
            
            for (int i = 0; i < str.Length; i++)
            {
                if (str == ch)
                {
                     str = str.ToUpper();
                }

                else if (str != ch)
                {
                     str = str.ToLower();
                     if (str != ch)
                     {
                          str = str.ToUppper();


                     }

                }
                return str;
            }

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


__________________
הנה חוכמת חיים שיווקית נפלאה ש"דגתי" מפי מאיר לישנסקי: "אם אתה רוצה ללכוד דג, תחשוב כמו דג ולא כמו דייג"
חזרה לתחילת העמוד הצג את כרטיס החבר של Madam חפש הודעות אחרות של Madam
 
מתנדב :)
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 02 February 2007 בשעה 08:10 | IP רשוּם
ציטוט מתנדב :)

Madam שלום,

מחרוזת היא מערך ולכן יש לעבור עם לולאה על כל תו במחרוזת.(תוך
שימוש ב [index])

 

אשמח אם אכן עזרתי.

חזרה לתחילת העמוד הצג את כרטיס החבר של מתנדב :) חפש הודעות אחרות של מתנדב :) בקר בדף הבית של מתנדב :)
 
shoshan
מנהל האתר
מנהל האתר
סמל אישי

הצטרף / הצטרפה: 16 July 2005
מדינה: Israel
משתמש: מנותק/ת
הודעות: 4637
נשלח בתאריך: 02 February 2007 בשעה 12:08 | IP רשוּם
ציטוט shoshan

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

הכי פשוט יהיה לך להשתמש ב
קוד:
char[] chars = s.ToCharArray();
// bla bla you can check stuff about chars[i], you can even change
s = new string(chars);


או

קוד:
StringBuilder sb = new StrringBuilder(s);
// bla bla you can check stuff about sb[i], you can even change
s = sb.ToString();


הקוד הראשון יותר מהיר.



__________________
עד מתי רשעים יעלוזו?

עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
חזרה לתחילת העמוד הצג את כרטיס החבר של shoshan חפש הודעות אחרות של shoshan בקר בדף הבית של shoshan
 
Madam
משתמש מתחיל
משתמש מתחיל


הצטרף / הצטרפה: 15 January 2007
משתמש: מנותק/ת
הודעות: 27
נשלח בתאריך: 04 February 2007 בשעה 21:02 | IP רשוּם
ציטוט Madam

תודה לכם, עזרתם מאד..

 



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

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

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