कॉन्सटेनेशन: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 1: Line 1:
{{Short description|Joining of strings in a programming language}}
{{Short description|Joining of strings in a programming language}}
{{about|the string operation of computer programming}}
{{about|कंप्यूटर प्रोग्रामिंग का स्ट्रिंग ऑपरेशन}}
{{for|concatenation of general lists|Append}}{{ProgLangCompare}}
{{for|सामान्य सूचियों का संयोजन|संलग्न}}{{ProgLangCompare}}


[[औपचारिक भाषा]] और [[कंप्यूटर प्रोग्रामिंग]] में, स्ट्रिंग कॉन्सटेनेशन, [[कैरेक्टर स्ट्रिंग (कंप्यूटर विज्ञान)]] को एंड-टू-एंड|एंड-टू-एंड से जोड़ने की प्रक्रिया है। उदाहरण के लिए, बर्फ और गेंद का संयोजन स्नोबॉल है। संयोजन सिद्धांत की कुछ औपचारिकताओं में, जिसे स्ट्रिंग सिद्धांत भी कहा जाता है, स्ट्रिंग संयोजन [[आदिम धारणा]] है।
[[औपचारिक भाषा]] और [[कंप्यूटर प्रोग्रामिंग]] में, स्ट्रिंग '''कॉन्सटेनेशन''', [[कैरेक्टर स्ट्रिंग (कंप्यूटर विज्ञान)]] को प्रारंभ से अंत तक जोड़ने का ऑपरेशन है। उदाहरण के लिए, बर्फ और गेंद का संयोजन स्नोबॉल है। संयोजन सिद्धांत की कुछ औपचारिकताओं में, जिसे स्ट्रिंग सिद्धांत भी कहा जाता है, स्ट्रिंग संयोजन [[आदिम धारणा|सर्वप्रथम धारणा]] है।


==वाक्यविन्यास==
==वाक्यविन्यास==
कई [[प्रोग्रामिंग भाषा]]ओं में, स्ट्रिंग कॉन्सटेनेशन [[बाइनरी ऑपरेशन]] [[इन्फ़िक्स ऑपरेटर]] है। <code>+</code> ई> (प्लस) ऑपरेटर अक्सर स्ट्रिंग तर्कों के लिए संयोजन को दर्शाने के लिए [[ऑपरेटर ओवरलोडिंग]] करता है: <code>"Hello, " + "World"</code> मूल्य है <code>"Hello, World"</code>. अन्य भाषाओं में अलग ऑपरेटर होता है, विशेष रूप से स्ट्रिंग में अंतर्निहित प्रकार के रूपांतरण को निर्दिष्ट करने के लिए, जेनेरिक प्लस के लिए अधिक जटिल व्यवहार के विपरीत। उदाहरणों में शामिल <code>.</code> [[एडिनबर्ग छोटा सा भूत]], पर्ल और पीएचपी में, <code>..</code> [[लुआ (प्रोग्रामिंग भाषा)]] में, और <code>&amp;</code> Ada, AppleScript और Visual Basic में।<ref>{{cite web |url=http://msdn.microsoft.com/en-us/library/te2585xw.aspx |title=विजुअल बेसिक में कॉन्सटेनेशन ऑपरेटर्स|work=.NET Visual Basic guide Language features: Operators and expressions |date=2015 |publisher=Microsoft}}</ref> अन्य वाक्यविन्यास मौजूद है, जैसे <code>||</code> पीएल/आई और [[ओरेकल डेटाबेस]] [[एसक्यूएल]] में।<ref>{{cite web |url=http://docs.oracle.com/cd/B19306_01/server.102/b14200/operators003.htm |title=संयोजन संचालक|work=Oracle Database Online Documentation, 10g Release 2 (10.2) / Administration: Database SQL Reference |publisher=Oracle}}</ref>
कई [[प्रोग्रामिंग भाषा]]ओं में, स्ट्रिंग कॉन्सटेनेशन [[बाइनरी ऑपरेशन]] [[इन्फ़िक्स ऑपरेटर]] है। स्ट्रिंग तर्कों के लिए संयोजन को दर्शाने के लिए <code>+</code> (प्लस) [[ऑपरेटर ओवरलोडिंग|ऑपरेटर]] को प्रायः [[ऑपरेटर ओवरलोडिंग|ओवरलोडिंग]] किया जाता है:<code>"Hello, " + "World"</code> का मान है <code>"Hello, World"</code> होता है। अन्य भाषाओं में भिन्न ऑपरेटर होता है, विशेष रूप से स्ट्रिंग में अंतर्निहित प्रकार के रूपांतरण को निर्दिष्ट करने के लिए, जेनेरिक प्लस के लिए अधिक जटिल व्यवहार के विपरीत उदाहरणों में सम्मिलित [[एडिनबर्ग छोटा सा भूत|एडिनबर्ग]] आईएमपी, पर्ल और पीएचपी में, <code>.</code><code>..</code> [[लुआ (प्रोग्रामिंग भाषा)]] में, और <code>&amp;</code> एडीए, एप्पलस्क्रिप्ट और विजुअल बेसिक में<ref>{{cite web |url=http://msdn.microsoft.com/en-us/library/te2585xw.aspx |title=विजुअल बेसिक में कॉन्सटेनेशन ऑपरेटर्स|work=.NET Visual Basic guide Language features: Operators and expressions |date=2015 |publisher=Microsoft}}</ref> अन्य वाक्यविन्यास उपस्तिथ है, जैसे <code>||</code> पीएल/आई और [[ओरेकल डेटाबेस]] [[एसक्यूएल]] में है।<ref>{{cite web |url=http://docs.oracle.com/cd/B19306_01/server.102/b14200/operators003.htm |title=संयोजन संचालक|work=Oracle Database Online Documentation, 10g Release 2 (10.2) / Administration: Database SQL Reference |publisher=Oracle}}</ref>
कुछ भाषाओं में, विशेष रूप से सी, सी++ और पायथन में, [[स्ट्रिंग शाब्दिक संयोजन]] होता है, जिसका अर्थ है कि आसन्न स्ट्रिंग अक्षर बिना किसी ऑपरेटर के संयोजित होते हैं: <code>"Hello, " "World"</code> मूल्य है <code>"Hello, World"</code>. अन्य भाषाओं में, ऑपरेटर के साथ स्ट्रिंग अक्षर के संयोजन का मूल्यांकन संकलन समय पर, निरंतर फोल्डिंग के माध्यम से किया जाता है, हालांकि यह अक्सर भाषा सुविधा के बजाय कंपाइलर का कार्यान्वयन विवरण होता है।
 
कुछ भाषाओं में, विशेष रूप से सी, सी++ और पायथन में, [[स्ट्रिंग शाब्दिक संयोजन]] होता है, जिसका अर्थ है कि आसन्न स्ट्रिंग अक्षर बिना किसी ऑपरेटर के संयोजित होते हैं: <code>"Hello, " "World"</code> का मान <code>"Hello, World"</code> है। अन्य भाषाओं में, ऑपरेटर के साथ स्ट्रिंग अक्षर के संयोजन का मूल्यांकन संकलन समय पर, निरंतर फोल्डिंग के माध्यम से किया जाता है, चूँकि यह प्रायः भाषा सुविधा के अतिरिक्त कंपाइलर का कार्यान्वयन विवरण होता है।


==कार्यान्वयन==
==कार्यान्वयन==
प्रोग्रामिंग में, स्ट्रिंग संयोजन आम तौर पर रन टाइम पर होता है, क्योंकि स्ट्रिंग मान आमतौर पर रन टाइम तक ज्ञात नहीं होते हैं। हालाँकि, स्ट्रिंग शाब्दिक के मामले में, मान संकलन समय पर ज्ञात होते हैं, और इस प्रकार स्ट्रिंग संयोजन संकलन समय पर किया जा सकता है, या तो स्ट्रिंग शाब्दिक संयोजन के माध्यम से या निरंतर फोल्डिंग के माध्यम से।
प्रोग्रामिंग में, स्ट्रिंग संयोजन सामान्यतः रन टाइम पर होता है, क्योंकि स्ट्रिंग मान सामान्यतः रन टाइम तक ज्ञात नहीं होते हैं। चूँकि, स्ट्रिंग शाब्दिक की अवस्था में, मान संकलन समय पर ज्ञात होते हैं, और इस प्रकार स्ट्रिंग संयोजन संकलन समय पर किया जा सकता है, या तो स्ट्रिंग शाब्दिक संयोजन के माध्यम से या निरंतर फोल्डिंग के माध्यम से ज्ञात होते हैं।


==स्ट्रिंग्स के सेट का संयोजन==
==स्ट्रिंग्स के सेट का संयोजन==
औपचारिक भाषा और [[पैटर्न मिलान]] ([[नियमित अभिव्यक्ति]]यों सहित) में, स्ट्रिंग्स पर संयोजन ऑपरेशन को स्ट्रिंग्स के सेट पर ऑपरेशन के लिए सामान्यीकृत किया जाता है:
औपचारिक भाषा सिद्धांत और [[पैटर्न मिलान|पैटर्न संघ]] ([[नियमित अभिव्यक्ति]]यों सहित) में, स्ट्रिंग्स पर संयोजन ऑपरेशन को स्ट्रिंग्स के सेट पर ऑपरेशन के लिए सामान्यीकृत किया जाता है:


स्ट्रिंग के दो सेटों के लिए एस<sub>1</sub> और एस<sub>2</sub>, संयोजन एस<sub>1</sub>S<sub>2</sub> इसमें vw फॉर्म की सभी स्ट्रिंग्स शामिल हैं, जहां v, S से स्ट्रिंग है<sub>1</sub> और w, S से स्ट्रिंग है<sub>2</sub>, या औपचारिक रूप से {{math|1=''S''<sub>1</sub>''S''<sub>2</sub> = {{mset| ''vw'' : ''v'' ∈ ''S''<sub>1</sub>,  ''w'' ∈ ''S''<sub>2</sub> }}}}. कई लेखक स्ट्रिंग सेट और स्ट्रिंग के संयोजन का भी उपयोग करते हैं, और इसके विपरीत, जो समान रूप से परिभाषित होते हैं {{math|1=''S''<sub>1</sub>''w'' = {{mset| ''vw'' : ''v'' ∈ ''S''<sub>1</sub> }}}} और {{math|1=''vS''<sub>2</sub> = {{mset| ''vw'' : ''w'' ∈ ''S''<sub>2</sub> }}}}. इन परिभाषाओं में, स्ट्रिंग vw स्ट्रिंग्स v और w का सामान्य संयोजन है जैसा कि परिचयात्मक अनुभाग में परिभाषित किया गया है।
स्ट्रिंग S<sub>1</sub> और S<sub>2</sub>, के दो सेटों के लिए, संयोजन S<sub>1</sub>S<sub>2</sub> में फॉर्म vw के सभी स्ट्रिंग्स सम्मिलित हैं, जहां v, S<sub>1</sub> से स्ट्रिंग है और w, S<sub>2</sub> से स्ट्रिंग है, या औपचारिक रूप से {{math|1=''S''<sub>1</sub>''S''<sub>2</sub> = {{mset| ''vw'' : ''v'' ∈ ''S''<sub>1</sub>,  ''w'' ∈ ''S''<sub>2</sub> }}}} कई लेखक स्ट्रिंग सेट और स्ट्रिंग के संयोजन का भी उपयोग करते हैं, और इसके विपरीत, जिन्हें {{math|1=''S''<sub>1</sub>''w'' = {{mset| ''vw'' : ''v'' ∈ ''S''<sub>1</sub> }}}} और {{math|1=''vS''<sub>2</sub> = {{mset| ''vw'' : ''w'' ∈ ''S''<sub>2</sub> }}}} द्वारा समान रूप से परिभाषित किया गया है। इन परिभाषाओं में, स्ट्रिंग vw स्ट्रिंग्स v और w का सामान्य संयोजन है जैसा कि परिचयात्मक अनुभाग में परिभाषित किया गया है।


उदाहरण के लिए, यदि {{math|1=''F'' = {{mset| a, b, c, d, e, f, g, h }}}}, और {{math|1=''R'' = {{mset| 1, 2, 3, 4, 5, 6, 7, 8 }}}}, तो FR [[बीजगणितीय संकेतन (शतरंज)]] में सभी शतरंज बोर्ड निर्देशांकों के सेट को दर्शाता है, जबकि eR राजाओं की [[फ़ाइल (शतरंज)]] के सभी निर्देशांकों के सेट को दर्शाता है।
उदाहरण के लिए, यदि {{math|1=''F'' = {{mset| a, b, c, d, e, f, g, h }}}}, और {{math|1=''R'' = {{mset| 1, 2, 3, 4, 5, 6, 7, 8 }}}}, तो FR समुच्चय को दर्शाता है सभी [[बीजगणितीय संकेतन (शतरंज)|शतरंज]] बोर्ड के [[बीजगणितीय संकेतन (शतरंज)|बीजगणितीय संकेतन]] में निर्देशांक होते हैं, जबकि eR किंग्स की [[फ़ाइल (शतरंज)]] के सभी निर्देशांकों के सेट को दर्शाता है।


इस संदर्भ में, स्ट्रिंग्स के सेट को अक्सर औपचारिक भाषाओं के रूप में संदर्भित किया जाता है। संयोजन संचालिका को आम तौर पर सरल संयोजन (गुणन के साथ) के रूप में व्यक्त किया जाता है।
इस संदर्भ में, स्ट्रिंग्स के सेट को प्रायः औपचारिक भाषाओं के रूप में संदर्भित किया जाता है। संयोजन संचालिका को सामान्यतः सरल संयोजन (गुणन के साथ) के रूप में व्यक्त किया जाता है।


==बीजगणितीय गुण==
==बीजगणितीय गुण==


किसी वर्णमाला पर तार, संयोजन संचालन के साथ, पहचान तत्व [[शून्य स्ट्रिंग]] के साथ सहयोगी संपत्ति बीजगणितीय संरचना बनाते हैं - मुक्त मोनॉइड।
किसी वर्णमाला पर स्ट्रिंग्स, संयोजन संचालन के साथ, पहचान एलिमेंट [[शून्य स्ट्रिंग]] मुक्त मोनॉइड के साथ सहयोगी बीजगणितीय संरचना बनाते हैं।


संयोजन और [[प्रत्यावर्तन (औपचारिक भाषा सिद्धांत)]] के साथ स्ट्रिंग्स के सेट [[मोटी हो जाओ]] बनाते हैं, जिसमें प्रत्यावर्तन (+) पर संयोजन (*) वितरण गुण होता है; 0 [[खाली सेट]] है और 1 वह सेट है जिसमें केवल शून्य स्ट्रिंग शामिल है।
संयोजन और [[प्रत्यावर्तन (औपचारिक भाषा सिद्धांत)]] के साथ स्ट्रिंग्स के सेट [[मोटी हो जाओ|सेमीरिंग]] बनाते हैं, जिसमें संयोजन (*) प्रत्यावर्तन (+) पर वितरित होता है; 0 [[खाली सेट|रिक्त सेट]] है और 1 वह सेट है जिसमें केवल शून्य स्ट्रिंग सम्मिलित है।  


==अनुप्रयोग==
==अनुप्रयोग==
Line 41: Line 42:
* सेकंड
* सेकंड


रिकॉर्डिंग स्वयं अलग-अलग मौजूद होती हैं, लेकिन उन्हें के बाद बजाने से श्रोता को व्याकरणिक रूप से सही वाक्य मिलता है।
रिकॉर्डिंग स्वयं भिन्न-भिन्न उपस्तिथ होती हैं, किंतु उन्हें पश्चात में बजाने से श्रोता को व्याकरणिक रूप से सही वाक्य मिलता है।


इस तकनीक का उपयोग नंबर परिवर्तन घोषणाओं, [[स्वर का मेल]] सिस्टम, या अधिकांश टेलीफोनी अनुप्रयोगों में भी किया जाता है जो कॉलर को गतिशील प्रतिक्रिया प्रदान करते हैं (उदाहरण के लिए [[ Moviefone ]], [[तेलमे]] और अन्य)।
इस तकनीक का उपयोग नंबर परिवर्तन घोषणाओं, [[स्वर का मेल|वॉयस मेल]] प्रणाली, या अधिकांश टेलीफोनी अनुप्रयोगों में भी किया जाता है जो कॉलर को गतिशील प्रतिक्रिया प्रदान करते हैं (उदाहरण के लिए [[ Moviefone |मूवीफोन]], [[तेलमे|टेलमी]] और अन्य)।


किसी भी प्रकार की कम्प्यूटरीकृत सार्वजनिक संबोधन प्रणाली के लिए प्रोग्रामिंग गतिशील सार्वजनिक घोषणाओं (उदाहरण के लिए, किसी हवाई अड्डे में उड़ानें) के लिए संयोजन को भी नियोजित कर सकती है। सिस्टम संख्याओं, मार्गों या एयरलाइनों, गंतव्यों, समयों आदि के रिकॉर्ड किए गए भाषण को संग्रहीत करेगा और व्याकरणिक रूप से सही वाक्य तैयार करने के लिए उन्हें विशिष्ट अनुक्रम में वापस चलाएगा जो पूरे सुविधा में घोषित किया जाएगा।
किसी भी प्रकार की कम्प्यूटरीकृत सार्वजनिक संबोधन प्रणाली के लिए प्रोग्रामिंग गतिशील सार्वजनिक घोषणाओं (उदाहरण के लिए, किसी हवाई अड्डे में उड़ानें) के लिए संयोजन को भी नियोजित कर सकती है। प्रणाली संख्याओं, मार्गों या एयरलाइनों, गंतव्यों, समयों आदि के रिकॉर्ड किए गए भाषण को संग्रहीत करेगा और व्याकरणिक रूप से सही वाक्य तैयार करने के लिए उन्हें विशिष्ट अनुक्रम में वापस चलाएगा जो पूर्ण सुविधा में घोषित किया जाएगा।


===डेटाबेस सिद्धांत===
===डेटाबेस सिद्धांत===
संबंधपरक डेटाबेस डिज़ाइन के सिद्धांतों में से यह है कि डेटा तालिकाओं के फ़ील्ड को तालिका के विषय की विशेषता को प्रतिबिंबित करना चाहिए, जिसका अर्थ है कि उनमें संयोजित स्ट्रिंग नहीं होनी चाहिए। जब किसी रिपोर्ट में संयोजन की आवश्यकता होती है, तो इसे रिपोर्ट चलाने के समय प्रदान किया जाना चाहिए। उदाहरण के लिए, किसी निश्चित ग्राहक का भौतिक पता प्रदर्शित करने के लिए, डेटा में भवन संख्या, सड़क का नाम, भवन उप-इकाई संख्या, शहर का नाम, राज्य/प्रांत का नाम, डाक कोड और देश का नाम शामिल हो सकता है, उदाहरण के लिए, 123 नकली सेंट अपार्टमेंट 4, बोल्डर, सीओ 80302, यूएसए, जो सात क्षेत्रों को जोड़ता है। हालाँकि, ग्राहक डेटा तालिका को उस संयोजित स्ट्रिंग को संग्रहीत करने के लिए फ़ील्ड का उपयोग नहीं करना चाहिए; बल्कि, रिपोर्ट चलाने पर सात क्षेत्रों का संयोजन होना चाहिए। ऐसे सिद्धांतों का कारण यह है कि उनके बिना, बड़ी मात्रा में डेटा की प्रविष्टि और अद्यतन त्रुटि-प्रवण और श्रम-गहन हो जाता है। शहर, राज्य, ज़िप कोड और राष्ट्र को अलग-अलग दर्ज करने से डेटा-एंट्री सत्यापन की अनुमति मिलती है (जैसे कि अमान्य राज्य संक्षिप्त नाम का पता लगाना)। फिर उन अलग-अलग वस्तुओं का उपयोग रिकॉर्ड्स को सॉर्ट करने या अनुक्रमित करने के लिए किया जा सकता है, जैसे कि शहर के नाम के रूप में बोल्डर के साथ।
संबंधपरक डेटाबेस डिज़ाइन के सिद्धांतों में से यह है कि डेटा तालिकाओं के फ़ील्ड को तालिका के विषय की विशेषता को प्रतिबिंबित करना चाहिए, जिसका अर्थ है कि उनमें संयोजित स्ट्रिंग नहीं होनी चाहिए। जब किसी रिपोर्ट में संयोजन की आवश्यकता होती है, तो इसे रिपोर्ट चलाने के समय प्रदान किया जाना चाहिए। उदाहरण के लिए, किसी निश्चित ग्राहक का भौतिक एड्रेस प्रदर्शित करने के लिए, डेटा में भवन संख्या, सड़क का नाम, भवन उप-इकाई संख्या, शहर का नाम, राज्य/प्रांत का नाम, डाक कोड और देश का नाम सम्मिलित हो सकता है, उदाहरण के लिए, 123 नकली सेंट अपार्टमेंट 4, बोल्डर, सीओ 80302, यूएसए, जो सात क्षेत्रों को जोड़ता है। चूँकि, ग्राहक डेटा तालिका को उस संयोजित स्ट्रिंग को संग्रहीत करने के लिए फ़ील्ड का उपयोग नहीं करना चाहिए; अन्यथा, रिपोर्ट चलाने पर सात क्षेत्रों का संयोजन होना चाहिए। ऐसे सिद्धांतों का कारण यह है कि उनके बिना, बड़ी मात्रा में डेटा की प्रविष्टि और अद्यतन त्रुटि-प्रवण और श्रम-गहन हो जाता है। शहर, राज्य, ज़िप कोड और राष्ट्र को भिन्न-भिन्न अंकित करने से डेटा-एंट्री सत्यापन की अनुमति मिलती है (जैसे कि अमान्य राज्य संक्षिप्त नाम को ज्ञात करना)। फिर उन भिन्न-भिन्न वस्तुओं का उपयोग रिकॉर्ड्स को सॉर्ट करने या अनुक्रमित करने के लिए किया जा सकता है, जैसे कि शहर के नाम के रूप में बोल्डर के साथ किया जाता है।


===[[मनोरंजक गणित]]===
===[[मनोरंजक गणित]]===
मनोरंजक गणित में, कई समस्याएं कुछ [[मूलांक]] में उनके अंकों के संयोजन के तहत संख्याओं के गुणों से संबंधित होती हैं। उदाहरणों में गृह अभाज्य (किसी दिए गए संख्या के अभाज्य गुणनखंडों के बढ़ते संयोजन को बार-बार गुणनखंडित करके प्राप्त अभाज्य), स्मरैंडचे-वेलिन संख्या (पहले [[अभाज्य संख्या]]ओं का संयोजन), और चैम्परनाउने स्थिरांक और कोपलैंड-एर्डोस स्थिरांक (वास्तविक संख्याएं) शामिल हैं। क्रमशः धनात्मक पूर्णांकों और अभाज्य संख्याओं के दशमलव निरूपण द्वारा)
मनोरंजक गणित में, कई समस्याएं किसी [[मूलांक]] में उनके अंकों के संयोजन के अंतर्गत संख्याओं के गुणों से संबंधित होती हैं। उदाहरणों में गृह अभाज्य (किसी संख्या के अभाज्य गुणनखंडों के बढ़ते संयोजन को बार-बार गुणनखंडित करके प्राप्त अभाज्य), स्मरैंडचे-वेलिन संख्या (पहले [[अभाज्य संख्या|अभाज्य संख्याओं]] का संयोजन), और चैम्परनाउने और कोपलैंड-एर्डोस स्थिरांक (द्वारा बनाई गई वास्तविक संख्या) सम्मिलित हैं। क्रमशः धनात्मक पूर्णांकों और अभाज्य संख्याओं का दशमलव निरूपण) भी सम्मिलित हैं।


==यह भी देखें==
==यह भी देखें==
* [[रस्सी (डेटा संरचना)]]
* [[रस्सी (डेटा संरचना)|रोप (डेटा संरचना)]]


==संदर्भ==
==संदर्भ==

Revision as of 20:17, 6 July 2023

औपचारिक भाषा और कंप्यूटर प्रोग्रामिंग में, स्ट्रिंग कॉन्सटेनेशन, कैरेक्टर स्ट्रिंग (कंप्यूटर विज्ञान) को प्रारंभ से अंत तक जोड़ने का ऑपरेशन है। उदाहरण के लिए, बर्फ और गेंद का संयोजन स्नोबॉल है। संयोजन सिद्धांत की कुछ औपचारिकताओं में, जिसे स्ट्रिंग सिद्धांत भी कहा जाता है, स्ट्रिंग संयोजन सर्वप्रथम धारणा है।

वाक्यविन्यास

कई प्रोग्रामिंग भाषाओं में, स्ट्रिंग कॉन्सटेनेशन बाइनरी ऑपरेशन इन्फ़िक्स ऑपरेटर है। स्ट्रिंग तर्कों के लिए संयोजन को दर्शाने के लिए + (प्लस) ऑपरेटर को प्रायः ओवरलोडिंग किया जाता है:"Hello, " + "World" का मान है "Hello, World" होता है। अन्य भाषाओं में भिन्न ऑपरेटर होता है, विशेष रूप से स्ट्रिंग में अंतर्निहित प्रकार के रूपांतरण को निर्दिष्ट करने के लिए, जेनेरिक प्लस के लिए अधिक जटिल व्यवहार के विपरीत उदाहरणों में सम्मिलित एडिनबर्ग आईएमपी, पर्ल और पीएचपी में, ... लुआ (प्रोग्रामिंग भाषा) में, और & एडीए, एप्पलस्क्रिप्ट और विजुअल बेसिक में[1] अन्य वाक्यविन्यास उपस्तिथ है, जैसे || पीएल/आई और ओरेकल डेटाबेस एसक्यूएल में है।[2]

कुछ भाषाओं में, विशेष रूप से सी, सी++ और पायथन में, स्ट्रिंग शाब्दिक संयोजन होता है, जिसका अर्थ है कि आसन्न स्ट्रिंग अक्षर बिना किसी ऑपरेटर के संयोजित होते हैं: "Hello, " "World" का मान "Hello, World" है। अन्य भाषाओं में, ऑपरेटर के साथ स्ट्रिंग अक्षर के संयोजन का मूल्यांकन संकलन समय पर, निरंतर फोल्डिंग के माध्यम से किया जाता है, चूँकि यह प्रायः भाषा सुविधा के अतिरिक्त कंपाइलर का कार्यान्वयन विवरण होता है।

कार्यान्वयन

प्रोग्रामिंग में, स्ट्रिंग संयोजन सामान्यतः रन टाइम पर होता है, क्योंकि स्ट्रिंग मान सामान्यतः रन टाइम तक ज्ञात नहीं होते हैं। चूँकि, स्ट्रिंग शाब्दिक की अवस्था में, मान संकलन समय पर ज्ञात होते हैं, और इस प्रकार स्ट्रिंग संयोजन संकलन समय पर किया जा सकता है, या तो स्ट्रिंग शाब्दिक संयोजन के माध्यम से या निरंतर फोल्डिंग के माध्यम से ज्ञात होते हैं।

स्ट्रिंग्स के सेट का संयोजन

औपचारिक भाषा सिद्धांत और पैटर्न संघ (नियमित अभिव्यक्तियों सहित) में, स्ट्रिंग्स पर संयोजन ऑपरेशन को स्ट्रिंग्स के सेट पर ऑपरेशन के लिए सामान्यीकृत किया जाता है:

स्ट्रिंग S1 और S2, के दो सेटों के लिए, संयोजन S1S2 में फॉर्म vw के सभी स्ट्रिंग्स सम्मिलित हैं, जहां v, S1 से स्ट्रिंग है और w, S2 से स्ट्रिंग है, या औपचारिक रूप से S1S2 = { vw : vS1, wS2 } कई लेखक स्ट्रिंग सेट और स्ट्रिंग के संयोजन का भी उपयोग करते हैं, और इसके विपरीत, जिन्हें S1w = { vw : vS1 } और vS2 = { vw : wS2 } द्वारा समान रूप से परिभाषित किया गया है। इन परिभाषाओं में, स्ट्रिंग vw स्ट्रिंग्स v और w का सामान्य संयोजन है जैसा कि परिचयात्मक अनुभाग में परिभाषित किया गया है।

उदाहरण के लिए, यदि F = { a, b, c, d, e, f, g, h }, और R = { 1, 2, 3, 4, 5, 6, 7, 8 }, तो FR समुच्चय को दर्शाता है सभी शतरंज बोर्ड के बीजगणितीय संकेतन में निर्देशांक होते हैं, जबकि eR किंग्स की फ़ाइल (शतरंज) के सभी निर्देशांकों के सेट को दर्शाता है।

इस संदर्भ में, स्ट्रिंग्स के सेट को प्रायः औपचारिक भाषाओं के रूप में संदर्भित किया जाता है। संयोजन संचालिका को सामान्यतः सरल संयोजन (गुणन के साथ) के रूप में व्यक्त किया जाता है।

बीजगणितीय गुण

किसी वर्णमाला पर स्ट्रिंग्स, संयोजन संचालन के साथ, पहचान एलिमेंट शून्य स्ट्रिंग मुक्त मोनॉइड के साथ सहयोगी बीजगणितीय संरचना बनाते हैं।

संयोजन और प्रत्यावर्तन (औपचारिक भाषा सिद्धांत) के साथ स्ट्रिंग्स के सेट सेमीरिंग बनाते हैं, जिसमें संयोजन (*) प्रत्यावर्तन (+) पर वितरित होता है; 0 रिक्त सेट है और 1 वह सेट है जिसमें केवल शून्य स्ट्रिंग सम्मिलित है।

अनुप्रयोग

ऑडियो/टेलीफोनी

टेलीफोनी के लिए प्रोग्रामिंग में, उपयोगकर्ता को गतिशील ऑडियो फीडबैक प्रदान करने के लिए कॉन्सटेनेशन का उपयोग किया जाता है। उदाहरण के लिए, दिन के समय बोलने वाली घड़ी में, उपयुक्त रिकॉर्डिंग को साथ चलाकर सही समय देने के लिए कॉन्सटेनेशन का उपयोग किया जाता है। उदाहरण के लिए:

  • स्वर में समय रहेगा
  • आठ
  • तीस
  • पाँच
  • और
  • बीस
  • पाँच
  • सेकंड

रिकॉर्डिंग स्वयं भिन्न-भिन्न उपस्तिथ होती हैं, किंतु उन्हें पश्चात में बजाने से श्रोता को व्याकरणिक रूप से सही वाक्य मिलता है।

इस तकनीक का उपयोग नंबर परिवर्तन घोषणाओं, वॉयस मेल प्रणाली, या अधिकांश टेलीफोनी अनुप्रयोगों में भी किया जाता है जो कॉलर को गतिशील प्रतिक्रिया प्रदान करते हैं (उदाहरण के लिए मूवीफोन, टेलमी और अन्य)।

किसी भी प्रकार की कम्प्यूटरीकृत सार्वजनिक संबोधन प्रणाली के लिए प्रोग्रामिंग गतिशील सार्वजनिक घोषणाओं (उदाहरण के लिए, किसी हवाई अड्डे में उड़ानें) के लिए संयोजन को भी नियोजित कर सकती है। प्रणाली संख्याओं, मार्गों या एयरलाइनों, गंतव्यों, समयों आदि के रिकॉर्ड किए गए भाषण को संग्रहीत करेगा और व्याकरणिक रूप से सही वाक्य तैयार करने के लिए उन्हें विशिष्ट अनुक्रम में वापस चलाएगा जो पूर्ण सुविधा में घोषित किया जाएगा।

डेटाबेस सिद्धांत

संबंधपरक डेटाबेस डिज़ाइन के सिद्धांतों में से यह है कि डेटा तालिकाओं के फ़ील्ड को तालिका के विषय की विशेषता को प्रतिबिंबित करना चाहिए, जिसका अर्थ है कि उनमें संयोजित स्ट्रिंग नहीं होनी चाहिए। जब किसी रिपोर्ट में संयोजन की आवश्यकता होती है, तो इसे रिपोर्ट चलाने के समय प्रदान किया जाना चाहिए। उदाहरण के लिए, किसी निश्चित ग्राहक का भौतिक एड्रेस प्रदर्शित करने के लिए, डेटा में भवन संख्या, सड़क का नाम, भवन उप-इकाई संख्या, शहर का नाम, राज्य/प्रांत का नाम, डाक कोड और देश का नाम सम्मिलित हो सकता है, उदाहरण के लिए, 123 नकली सेंट अपार्टमेंट 4, बोल्डर, सीओ 80302, यूएसए, जो सात क्षेत्रों को जोड़ता है। चूँकि, ग्राहक डेटा तालिका को उस संयोजित स्ट्रिंग को संग्रहीत करने के लिए फ़ील्ड का उपयोग नहीं करना चाहिए; अन्यथा, रिपोर्ट चलाने पर सात क्षेत्रों का संयोजन होना चाहिए। ऐसे सिद्धांतों का कारण यह है कि उनके बिना, बड़ी मात्रा में डेटा की प्रविष्टि और अद्यतन त्रुटि-प्रवण और श्रम-गहन हो जाता है। शहर, राज्य, ज़िप कोड और राष्ट्र को भिन्न-भिन्न अंकित करने से डेटा-एंट्री सत्यापन की अनुमति मिलती है (जैसे कि अमान्य राज्य संक्षिप्त नाम को ज्ञात करना)। फिर उन भिन्न-भिन्न वस्तुओं का उपयोग रिकॉर्ड्स को सॉर्ट करने या अनुक्रमित करने के लिए किया जा सकता है, जैसे कि शहर के नाम के रूप में बोल्डर के साथ किया जाता है।

मनोरंजक गणित

मनोरंजक गणित में, कई समस्याएं किसी मूलांक में उनके अंकों के संयोजन के अंतर्गत संख्याओं के गुणों से संबंधित होती हैं। उदाहरणों में गृह अभाज्य (किसी संख्या के अभाज्य गुणनखंडों के बढ़ते संयोजन को बार-बार गुणनखंडित करके प्राप्त अभाज्य), स्मरैंडचे-वेलिन संख्या (पहले अभाज्य संख्याओं का संयोजन), और चैम्परनाउने और कोपलैंड-एर्डोस स्थिरांक (द्वारा बनाई गई वास्तविक संख्या) सम्मिलित हैं। क्रमशः धनात्मक पूर्णांकों और अभाज्य संख्याओं का दशमलव निरूपण) भी सम्मिलित हैं।

यह भी देखें

संदर्भ

  1. "विजुअल बेसिक में कॉन्सटेनेशन ऑपरेटर्स". .NET Visual Basic guide Language features: Operators and expressions. Microsoft. 2015.
  2. "संयोजन संचालक". Oracle Database Online Documentation, 10g Release 2 (10.2) / Administration: Database SQL Reference. Oracle.