שרשור (מחרוזות)

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

פעולת השרשור אינה קומוטטיבית, שהרי, למשל, 'ויקי' + 'פדיה' ≠ 'פדיה' + 'ויקי'. פעולת השרשור היא פעולה אסוציאטיבית, כלומר לכל שלוש מחרוזות a,b,c מתקיים a+(b+c) = (a+b)+c. איבר היחידה לפעולת השרשור הוא המחרוזת הריקה (שנסמנה בשני גרשים (בודדים) צמודים, ''), כלומר לכל מחרוזת a מתקיים . האיבר היחיד באוסף של מחרוזות שיש לו איבר הופכי הוא המחרוזת הריקה. בהתאם לכך, האוסף של מילים סופיות באלפבית X, ביחס לפעולת השרשור, הוא מונואיד (זהו המונואיד החפשי על X, ראו חבורה חופשית).

בשפות טבעיות רווחת פעולה של שרשור מורפמות ליצירת מילים חדשות והטיות של מילים קיימות. דוגמה: המילה האנגלית unbreakable מורכבת משרשור של שלושה צורנים: un+break+able. כך גם המילה העברית 'וכשכתבנו' = 'ו' + 'כש' + 'כתב' + 'נו'.

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

 סימן חיבור (+) – BASIC, ויז'ואל בייסיק, פסקל, JavaScript, Java, פייתון, C sharp
 אמפרסנד (&) – עדה, BASIC, ויז'ואל בייסיק
 שני קווים ניצבים (||) – PL/I
 נקודה (.) – פרל, PHP

תכנות
פעולות בינאריות