908:
physical address of a certain customer, the data might include building number, street name, building sub-unit number, city name, state/province name, postal code, and country name, e.g., "123 Fake St Apt 4, Boulder, CO 80302, USA", which combines seven fields. However, the customers data table should not use one field to store that concatenated string; rather, the concatenation of the seven fields should happen upon running the report. The reason for such principles is that without them, the entry and updating of large volumes of data becomes error-prone and labor-intensive. Separately entering the city, state, ZIP code, and nation allows data-entry validation (such as detecting an invalid state abbreviation). Then those separate items can be used for sorting or indexing the records, such as all with "Boulder" as the city name.
50:
894:
Programming for any kind of computerised public address system can also employ concatenation for dynamic public announcements (for example, flights in an airport). The system would archive recorded speech of numbers, routes or airlines, destinations, times, etc. and play them back in a specific
907:
design is that the fields of data tables should reflect a single characteristic of the table's subject, which means that they should not contain concatenated strings. When concatenation is desired in a report, it should be provided at the time of running the report. For example, to display the
548:
In programming, string concatenation generally occurs at run time, as string values are typically not known until run time. However, in the case of string literals, the values are known at compile time, and thus string concatenation can be done at compile time, either via
269:
424:
200:
230:
180:
264:
257:
210:
135:
225:
783:
In this context, sets of strings are often referred to as formal languages. The concatenation operator is usually expressed as simple juxtaposition (as with
252:
417:
397:
279:
220:
876:
The recordings themselves exist separately, but playing them one after the other provides a grammatically correct sentence to the listener.
410:
130:
392:
205:
337:
274:
158:
235:
839:
In programming for telephony, concatenation is used to provide dynamic audio feedback to a user. For example, in a "time of day"
240:
245:
185:
811:
678:. Many authors also use concatenation of a string set and a single string, and vice versa, which are defined similarly by
140:
450:
289:
175:
120:
109:
317:
1131:
125:
1059:
372:
93:
71:
64:
1126:
352:
367:
284:
387:
215:
31:
941:
929:
299:
294:
928:(primes obtained by repeatedly factoring the increasing concatenation of prime factors of a given number),
550:
528:
382:
362:
195:
17:
163:
1021:
577:), the concatenation operation on strings is generalised to an operation on sets of strings as follows:
342:
769:
377:
1121:
170:
357:
347:
1069:
1026:
Oracle
Database Online Documentation, 10g Release 2 (10.2) / Administration: Database SQL Reference
917:
456:. For example, the concatenation of "snow" and "ball" is "snowball". In certain formalisations of
58:
153:
920:, many problems concern the properties of numbers under concatenation of their numerals in some
895:
sequence to produce a grammatically correct sentence that is announced throughout the facility.
190:
75:
957:
937:
819:
995:
148:
796:
531:, which means that adjacent strings are concatenated without any operator. Example from C:
487:
473:
457:
442:
883:
systems, or most telephony applications that provide dynamic feedback to the caller (e.g.
8:
904:
574:
312:
977:
483:, and in some it is written without an operator. This is implemented in different ways:
30:
This article is about the string operation of computer programming. For other uses, see
1097:
1089:
843:, concatenation is used to give the correct time by playing the appropriate recordings
1055:
945:
1101:
1081:
570:
554:
477:
461:
566:
522:
438:
453:
1047:
840:
784:
480:
1115:
1043:
933:
777:
804:
800:
765:
795:
The strings over an alphabet, with the concatenation operation, form an
1093:
925:
880:
884:
823:
1085:
982:.NET Visual Basic guide Language features: Operators and expressions
815:
944:(the real numbers formed by the decimal representations of the
888:
38:
921:
1072:; Frank, William; Maloney, Michael (1974). "String theory".
879:
This technique is also used in number change announcements,
1052:
Introduction to
Automata Theory, Languages and Computation
460:, also called string theory, string concatenation is a
1068:
560:
826:and 1 the set consisting of just the null string.
776:denotes the set of all coordinates of the kings'
1113:
398:Comparison of Visual Basic and Visual Basic .NET
1042:
799:algebraic structure with identity element the
418:
517:in SQL. This has the advantage over reusing
27:Joining of strings in a programming language
911:
425:
411:
358:ALGOL 68: Comparisons with other languages
348:ALGOL 60: Comparisons with other languages
978:"Concatenation Operators in Visual Basic"
735:is the ordinary concatenation of strings
94:Learn how and when to remove this message
743:as defined in the introductory section.
57:This article includes a list of general
37:For concatenation of general lists, see
810:Sets of strings with concatenation and
790:
368:Comparison of Pascal and Borland Delphi
14:
1114:
948:and the prime numbers, respectively).
393:Comparison of C# and Visual Basic .NET
557:, a potential run-time optimization.
338:Comparison of Java and .NET platforms
610:consists of all strings of the form
43:
731:. In these definitions, the string
24:
898:
834:
63:it lacks sufficient corresponding
25:
1143:
932:(the concatenations of the first
543:
373:Comparison of Object Pascal and C
561:Concatenation of sets of strings
343:ALGOL 58's influence on ALGOL 60
48:
851:"At the tone, the time will be"
829:
822:over alternation (+); 0 is the
1014:
996:"SQL | Concatenation Operator"
988:
970:
353:Comparison of ALGOL 68 and C++
318:List of "Hello World" programs
32:Concatenation (disambiguation)
13:
1:
963:
758:= { 1, 2, 3, 4, 5, 6, 7, 8 }
751:= { a, b, c, d, e, f, g, h }
551:string literal concatenation
529:string literal concatenation
505:Dedicated operator, such as
476:, string concatenation is a
449:is the operation of joining
285:Ternary conditional operator
275:Object-oriented constructors
7:
951:
270:Object-oriented programming
10:
1148:
1036:
930:Smarandache–Wellin numbers
383:Comparison of Java and C++
378:Comparison of Pascal and C
363:Compatibility of C and C++
36:
29:
1132:String (computer science)
1074:Journal of Symbolic Logic
903:One of the principles of
818:, with concatenation (*)
467:
388:Comparison of C# and Java
295:Safe navigation operators
290:Null coalescing operators
1022:"Concatenation Operator"
942:Copeland–Erdős constants
918:recreational mathematics
912:Recreational mathematics
580:For two sets of strings
521:that it allows implicit
330:Comparison of individual
1127:Operators (programming)
847:together. For example:
764:denotes the set of all
201:Functional instructions
196:Conditional expressions
78:more precise citations.
567:formal language theory
439:formal language theory
231:Higher-order functions
958:Rope (data structure)
474:programming languages
447:string concatenation
112:programming languages
924:. Examples include
791:Algebraic properties
513:in Visual Basic and
458:concatenation theory
443:computer programming
181:Algebraic data types
905:relational database
575:regular expressions
496:"Hello, " + "World"
313:Evaluation strategy
191:Anonymous functions
1054:. Addison-Wesley.
1048:Ullman, Jeffrey D.
984:. Microsoft. 2015.
770:algebraic notation
265:List comprehension
211:Associative arrays
171:Exception handling
136:Basic instructions
121:General comparison
1044:Hopcroft, John E.
1002:. 12 January 2018
1000:geeksforgeeks.org
946:positive integers
629:is a string from
618:is a string from
533:"Hello, " "World"
494:Example from C#:
451:character strings
435:
434:
221:String operations
104:
103:
96:
16:(Redirected from
1139:
1122:Formal languages
1105:
1065:
1030:
1029:
1018:
1012:
1011:
1009:
1007:
992:
986:
985:
974:
759:
752:
746:For example, if
730:
705:
677:
571:pattern matching
555:constant folding
538:
534:
520:
516:
512:
508:
501:
497:
493:
462:primitive notion
427:
420:
413:
300:Modulo operators
226:String functions
176:Enumerated types
106:
105:
99:
92:
88:
85:
79:
74:this article by
65:inline citations
52:
51:
44:
21:
1147:
1146:
1142:
1141:
1140:
1138:
1137:
1136:
1112:
1111:
1109:
1086:10.2307/2272846
1062:
1039:
1034:
1033:
1020:
1019:
1015:
1005:
1003:
994:
993:
989:
976:
975:
971:
966:
954:
914:
901:
899:Database theory
891:, and others).
837:
835:Audio/telephony
832:
793:
768:coordinates in
754:
747:
728:
713:
707:
703:
685:
679:
675:
664:
649:
643:
637:
635:
624:
609:
603:
593:
586:
563:
546:
536:
532:
523:type conversion
518:
514:
510:
506:
499:
495:
491:
470:
431:
402:
334:
333:
331:
326:
258:Dependent types
111:
100:
89:
83:
80:
70:Please help to
69:
53:
49:
42:
35:
28:
23:
22:
15:
12:
11:
5:
1145:
1135:
1134:
1129:
1124:
1107:
1106:
1080:(4): 625–637.
1070:Corcoran, John
1066:
1060:
1038:
1035:
1032:
1031:
1013:
987:
968:
967:
965:
962:
961:
960:
953:
950:
913:
910:
900:
897:
874:
873:
870:
867:
864:
861:
858:
855:
852:
841:speaking clock
836:
833:
831:
828:
792:
789:
785:multiplication
726:
711:
701:
683:
673:
662:
647:
641:
636:, or formally
633:
622:
607:
601:
591:
584:
562:
559:
545:
544:Implementation
542:
541:
540:
537:"Hello, World"
535:has the value
526:
503:
500:"Hello, World"
498:has the value
490:the plus sign
481:infix operator
469:
466:
433:
432:
430:
429:
422:
415:
407:
404:
403:
401:
400:
395:
390:
385:
380:
375:
370:
365:
360:
355:
350:
345:
340:
329:
328:
327:
323:
322:
321:
320:
315:
307:
306:
305:
304:
303:
302:
297:
292:
287:
277:
272:
267:
262:
261:
260:
250:
249:
248:
243:
238:
228:
223:
218:
213:
208:
203:
198:
193:
188:
183:
178:
173:
168:
167:
166:
161:
156:
151:
143:
138:
133:
128:
123:
115:
114:
102:
101:
56:
54:
47:
26:
9:
6:
4:
3:
2:
1144:
1133:
1130:
1128:
1125:
1123:
1120:
1119:
1117:
1110:
1103:
1099:
1095:
1091:
1087:
1083:
1079:
1075:
1071:
1067:
1063:
1061:0-201-02988-X
1057:
1053:
1049:
1045:
1041:
1040:
1027:
1023:
1017:
1001:
997:
991:
983:
979:
973:
969:
959:
956:
955:
949:
947:
943:
939:
935:
934:prime numbers
931:
927:
923:
919:
909:
906:
896:
892:
890:
886:
882:
877:
871:
868:
865:
862:
859:
856:
853:
850:
849:
848:
846:
842:
827:
825:
821:
817:
813:
808:
806:
802:
798:
788:
786:
781:
779:
775:
771:
767:
763:
757:
750:
744:
742:
738:
734:
725:
721:
717:
710:
700:
696:
692:
688:
682:
672:
668:
661:
657:
653:
646:
640:
632:
628:
621:
617:
613:
606:
600:
597:
596:concatenation
590:
583:
578:
576:
572:
568:
558:
556:
552:
530:
527:
524:
504:
489:
486:
485:
484:
482:
479:
475:
465:
463:
459:
455:
452:
448:
444:
440:
428:
423:
421:
416:
414:
409:
408:
406:
405:
399:
396:
394:
391:
389:
386:
384:
381:
379:
376:
374:
371:
369:
366:
364:
361:
359:
356:
354:
351:
349:
346:
344:
341:
339:
336:
335:
325:
324:
319:
316:
314:
311:
310:
309:
308:
301:
298:
296:
293:
291:
288:
286:
283:
282:
281:
278:
276:
273:
271:
268:
266:
263:
259:
256:
255:
254:
251:
247:
244:
242:
239:
237:
234:
233:
232:
229:
227:
224:
222:
219:
217:
214:
212:
209:
207:
204:
202:
199:
197:
194:
192:
189:
187:
184:
182:
179:
177:
174:
172:
169:
165:
162:
160:
157:
155:
152:
150:
149:Foreach loops
147:
146:
145:Control flow
144:
142:
139:
137:
134:
132:
129:
127:
124:
122:
119:
118:
117:
116:
113:
110:Comparison of
108:
107:
98:
95:
87:
77:
73:
67:
66:
60:
55:
46:
45:
40:
33:
19:
1108:
1077:
1073:
1051:
1025:
1016:
1004:. Retrieved
999:
990:
981:
972:
938:Champernowne
915:
902:
893:
878:
875:
845:concatenated
844:
838:
830:Applications
820:distributing
809:
794:
782:
773:
761:
755:
748:
745:
740:
736:
732:
723:
719:
715:
708:
698:
694:
690:
686:
680:
670:
666:
659:
655:
651:
644:
638:
630:
626:
619:
615:
611:
604:
598:
595:
588:
581:
579:
564:
547:
471:
446:
436:
253:Type systems
131:Basic syntax
90:
81:
62:
18:Concatenated
936:), and the
926:home primes
812:alternation
805:free monoid
801:null string
797:associative
766:chess board
573:(including
488:Overloading
154:While loops
76:introducing
1116:Categories
964:References
881:voice mail
525:to string.
454:end-to-end
186:Generators
126:Assignment
59:references
1028:. Oracle.
1006:11 August
885:moviefone
872:"Seconds"
824:empty set
803:—a
772:, while e
332:languages
280:Operators
159:For loops
84:June 2024
1050:(1979).
952:See also
866:"Twenty"
857:"Thirty"
816:semiring
718: :
693: :
654: :
509:in PHP,
472:In many
164:Do-while
141:Comments
1102:2168826
1094:2272846
1037:Sources
854:"Eight"
814:form a
760:, then
553:or via
72:improve
1100:
1092:
1058:
889:tellme
869:"Five"
860:"Five"
753:, and
614:where
594:, the
478:binary
468:Syntax
236:Filter
206:Arrays
61:, but
39:Append
1098:S2CID
1090:JSTOR
863:"and"
511:&
216:Scope
1056:ISBN
1008:2023
940:and
922:base
778:file
739:and
714:= {
706:and
689:= {
650:= {
625:and
587:and
569:and
441:and
241:Fold
1082:doi
916:In
787:).
665:,
565:In
437:In
246:Map
1118::
1096:.
1088:.
1078:39
1076:.
1046:;
1024:.
998:.
980:.
887:,
807:.
780:.
762:FR
733:vw
722:∈
716:vw
709:vS
697:∈
691:vw
669:∈
658:∈
652:vw
612:vw
515:||
464:.
445:,
1104:.
1084::
1064:.
1010:.
774:R
756:R
749:F
741:w
737:v
729:}
727:2
724:S
720:w
712:2
704:}
702:1
699:S
695:v
687:w
684:1
681:S
676:}
674:2
671:S
667:w
663:1
660:S
656:v
648:2
645:S
642:1
639:S
634:2
631:S
627:w
623:1
620:S
616:v
608:2
605:S
602:1
599:S
592:2
589:S
585:1
582:S
539:.
519:+
507:.
502:.
492:+
426:e
419:t
412:v
97:)
91:(
86:)
82:(
68:.
41:.
34:.
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.