Swift Strings
String is combinations of characters. That are normally used in all programming language. String literals are define inside the double quotes.
var message="Welcome to swift string" //string literals
print("\(message)") //Welcome to swift string
String variable is define by String data type in above program we are assigning string literals to variable. And variable data type are not specified in this situation compiler are provide variable data type by using assigning value. Above statement are similar to this statement.
var message:String="Welcome to swift string" //string literals
print("\(message)") //Welcome to swift string
Multiline text is defined by using of three double quotes """. And there first line text must be in new line. And end with """ that are is define in new line That is indicates end of multiline text.
//define multiline text
let myText="""
This is an
Multiline Text
"""
//display value
print(myText)
Output
This is an
Multiline Text
Inside the string literals we can use Escape sequence (\n,\t) to arrange and format of text.
//Using escape Sequence inside a string literals
let escapeSequence = """
A\tB\tC\tD\nE\t\t\tF\nG\t\t\tH
"""
print("\(escapeSequence)")
Output
A B C D
E F
G H
Normally new line is not part of multiline in case we are need to arranging long text to written separate line without breaking actual line. Then we can use backslash (\) in string literal.
let myText = """
This is simple \
single line text, \
And Arranged by backslash
"""
print("\(myText)")
Output
This is simple single line text, And Arranged by backslash
String Interpolation
That is a way to mention expression inside a string text. Normally that are used to describe constant expression and use variables inside a text.
let sum="\(1+2)" //evaluate expression
print(sum) //3
print("Type of Sum : \(type(of:sum)) ")
Output
3
Type of Sum : String
Note that this are evaluate an expression but resultant is always in string form. They are mostly use to display result by print() function.
Use special characters in String Literals
In previous example we are view the example of how to format string literals in special format. There are few more special characters are available in Swift Programming. They are used to special purpose and produce special symbols.
unicode scalar values:
print("\u{950}") //ॐ
print("\u{1600}") //ᘀ
print("\u{2131}") // ℱ
print("\u{2693}") // ⚓
print("\u{2934}") // ⤴
print("\u{2792}") //➒
print("\u{2748}") //❈
print("\u{2730}") //✰
print("\u{2668}") //♨
print("\u{2656}") //♖
Output
ॐ
ᘀ
ℱ
⚓
⤴
➒
❈
✰
♨
♖
In Given below there are display unicode scalar value in between of (2000 -3000)
//Print unicode scalar values (2000-3000)
var i=2000
while(i<=3000){
let one=UnicodeScalar(Int(String(i), radix: 16)!)!
let two=UnicodeScalar(Int(String(i+1), radix: 16)!)!
let three=UnicodeScalar(Int(String(i+2), radix: 16)!)!
let four=UnicodeScalar(Int(String(i+3), radix: 16)!)!
print("\(i):\(one) \t \(i+1):\(two) \t \(i+2):\(three) \t \(i+3):\(four)")
i+=4
}
Output
2000: 2001: 2002: 2003:
2004: 2005: 2006: 2007:
2008: 2009: 2010:‐ 2011:‑
2012:‒ 2013:– 2014:— 2015:―
2016:‖ 2017:‗ 2018:‘ 2019:’
2020:† 2021:‡ 2022:• 2023:‣
2024:․ 2025:‥ 2026:… 2027:‧
2028:
2029:
2030:‰ 2031:‱
2032:′ 2033:″ 2034:‴ 2035:‵
2036:‶ 2037:‷ 2038:‸ 2039:‹
2040:⁀ 2041:⁁ 2042:⁂ 2043:⁃
2044:⁄ 2045:⁅ 2046:⁆ 2047:⁇
2048:⁈ 2049:⁉ 2050:⁐ 2051:⁑
2052:⁒ 2053:⁓ 2054:⁔ 2055:⁕
2056:⁖ 2057:⁗ 2058:⁘ 2059:⁙
2060: 2061: 2062: 2063:
2064: 2065: 2066: 2067:
2068: 2069: 2070:⁰ 2071:ⁱ
2072: 2073: 2074:⁴ 2075:⁵
2076:⁶ 2077:⁷ 2078:⁸ 2079:⁹
2080:₀ 2081:₁ 2082:₂ 2083:₃
2084:₄ 2085:₅ 2086:₆ 2087:₇
2088:₈ 2089:₉ 2090:ₐ 2091:ₑ
2092:ₒ 2093:ₓ 2094:ₔ 2095:ₕ
2096:ₖ 2097:ₗ 2098:ₘ 2099:ₙ
2100:℀ 2101:℁ 2102:ℂ 2103:℃
2104:℄ 2105:℅ 2106:℆ 2107:ℇ
2108:℈ 2109:℉ 2110:ℐ 2111:ℑ
2112:ℒ 2113:ℓ 2114:℔ 2115:ℕ
2116:№ 2117:℗ 2118:℘ 2119:ℙ
2120:℠ 2121:℡ 2122:™ 2123:℣
2124:ℤ 2125:℥ 2126:Ω 2127:℧
2128:ℨ 2129:℩ 2130:ℰ 2131:ℱ
2132:Ⅎ 2133:ℳ 2134:ℴ 2135:ℵ
2136:ℶ 2137:ℷ 2138:ℸ 2139:ℹ
2140:⅀ 2141:⅁ 2142:⅂ 2143:⅃
2144:⅄ 2145:ⅅ 2146:ⅆ 2147:ⅇ
2148:ⅈ 2149:ⅉ 2150:⅐ 2151:⅑
2152:⅒ 2153:⅓ 2154:⅔ 2155:⅕
2156:⅖ 2157:⅗ 2158:⅘ 2159:⅙
2160:Ⅰ 2161:Ⅱ 2162:Ⅲ 2163:Ⅳ
2164:Ⅴ 2165:Ⅵ 2166:Ⅶ 2167:Ⅷ
2168:Ⅸ 2169:Ⅹ 2170:ⅰ 2171:ⅱ
2172:ⅲ 2173:ⅳ 2174:ⅴ 2175:ⅵ
2176:ⅶ 2177:ⅷ 2178:ⅸ 2179:ⅹ
2180:ↀ 2181:ↁ 2182:ↂ 2183:Ↄ
2184:ↄ 2185:ↅ 2186:ↆ 2187:ↇ
2188:ↈ 2189:↉ 2190:← 2191:↑
2192:→ 2193:↓ 2194:↔ 2195:↕
2196:↖ 2197:↗ 2198:↘ 2199:↙
2200:∀ 2201:∁ 2202:∂ 2203:∃
2204:∄ 2205:∅ 2206:∆ 2207:∇
2208:∈ 2209:∉ 2210:∐ 2211:∑
2212:− 2213:∓ 2214:∔ 2215:∕
2216:∖ 2217:∗ 2218:∘ 2219:∙
2220:∠ 2221:∡ 2222:∢ 2223:∣
2224:∤ 2225:∥ 2226:∦ 2227:∧
2228:∨ 2229:∩ 2230:∰ 2231:∱
2232:∲ 2233:∳ 2234:∴ 2235:∵
2236:∶ 2237:∷ 2238:∸ 2239:∹
2240:≀ 2241:≁ 2242:≂ 2243:≃
2244:≄ 2245:≅ 2246:≆ 2247:≇
2248:≈ 2249:≉ 2250:≐ 2251:≑
2252:≒ 2253:≓ 2254:≔ 2255:≕
2256:≖ 2257:≗ 2258:≘ 2259:≙
2260:≠ 2261:≡ 2262:≢ 2263:≣
2264:≤ 2265:≥ 2266:≦ 2267:≧
2268:≨ 2269:≩ 2270:≰ 2271:≱
2272:≲ 2273:≳ 2274:≴ 2275:≵
2276:≶ 2277:≷ 2278:≸ 2279:≹
2280:⊀ 2281:⊁ 2282:⊂ 2283:⊃
2284:⊄ 2285:⊅ 2286:⊆ 2287:⊇
2288:⊈ 2289:⊉ 2290:⊐ 2291:⊑
2292:⊒ 2293:⊓ 2294:⊔ 2295:⊕
2296:⊖ 2297:⊗ 2298:⊘ 2299:⊙
2300:⌀ 2301:⌁ 2302:⌂ 2303:⌃
2304:⌄ 2305:⌅ 2306:⌆ 2307:⌇
2308:⌈ 2309:⌉ 2310:⌐ 2311:⌑
2312:⌒ 2313:⌓ 2314:⌔ 2315:⌕
2316:⌖ 2317:⌗ 2318:⌘ 2319:⌙
2320:⌠ 2321:⌡ 2322:⌢ 2323:⌣
2324:⌤ 2325:⌥ 2326:⌦ 2327:⌧
2328:⌨ 2329:〈 2330:⌰ 2331:⌱
2332:⌲ 2333:⌳ 2334:⌴ 2335:⌵
2336:⌶ 2337:⌷ 2338:⌸ 2339:⌹
2340:⍀ 2341:⍁ 2342:⍂ 2343:⍃
2344:⍄ 2345:⍅ 2346:⍆ 2347:⍇
2348:⍈ 2349:⍉ 2350:⍐ 2351:⍑
2352:⍒ 2353:⍓ 2354:⍔ 2355:⍕
2356:⍖ 2357:⍗ 2358:⍘ 2359:⍙
2360:⍠ 2361:⍡ 2362:⍢ 2363:⍣
2364:⍤ 2365:⍥ 2366:⍦ 2367:⍧
2368:⍨ 2369:⍩ 2370:⍰ 2371:⍱
2372:⍲ 2373:⍳ 2374:⍴ 2375:⍵
2376:⍶ 2377:⍷ 2378:⍸ 2379:⍹
2380:⎀ 2381:⎁ 2382:⎂ 2383:⎃
2384:⎄ 2385:⎅ 2386:⎆ 2387:⎇
2388:⎈ 2389:⎉ 2390:⎐ 2391:⎑
2392:⎒ 2393:⎓ 2394:⎔ 2395:⎕
2396:⎖ 2397:⎗ 2398:⎘ 2399:⎙
2400:␀ 2401:␁ 2402:␂ 2403:␃
2404:␄ 2405:␅ 2406:␆ 2407:␇
2408:␈ 2409:␉ 2410:␐ 2411:␑
2412:␒ 2413:␓ 2414:␔ 2415:␕
2416:␖ 2417:␗ 2418:␘ 2419:␙
2420:␠ 2421:␡ 2422:␢ 2423:␣
2424: 2425:␥ 2426:␦ 2427:
2428: 2429: 2430: 2431:
2432: 2433: 2434: 2435:
2436: 2437: 2438: 2439:
2440:⑀ 2441:⑁ 2442:⑂ 2443:⑃
2444:⑄ 2445:⑅ 2446:⑆ 2447:⑇
2448:⑈ 2449:⑉ 2450: 2451:
2452: 2453: 2454: 2455:
2456: 2457: 2458: 2459:
2460:① 2461:② 2462:③ 2463:④
2464:⑤ 2465:⑥ 2466:⑦ 2467:⑧
2468:⑨ 2469:⑩ 2470:⑰ 2471:⑱
2472:⑲ 2473:⑳ 2474:⑴ 2475:⑵
2476:⑶ 2477:⑷ 2478:⑸ 2479:⑹
2480:⒀ 2481:⒁ 2482:⒂ 2483:⒃
2484:⒄ 2485:⒅ 2486:⒆ 2487:⒇
2488:⒈ 2489:⒉ 2490:⒐ 2491:⒑
2492:⒒ 2493:⒓ 2494:⒔ 2495:⒕
2496:⒖ 2497:⒗ 2498:⒘ 2499:⒙
2500:─ 2501:━ 2502:│ 2503:┃
2504:┄ 2505:┅ 2506:┆ 2507:┇
2508:┈ 2509:┉ 2510:┐ 2511:┑
2512:┒ 2513:┓ 2514:└ 2515:┕
2516:┖ 2517:┗ 2518:┘ 2519:┙
2520:┠ 2521:┡ 2522:┢ 2523:┣
2524:┤ 2525:┥ 2526:┦ 2527:┧
2528:┨ 2529:┩ 2530:┰ 2531:┱
2532:┲ 2533:┳ 2534:┴ 2535:┵
2536:┶ 2537:┷ 2538:┸ 2539:┹
2540:╀ 2541:╁ 2542:╂ 2543:╃
2544:╄ 2545:╅ 2546:╆ 2547:╇
2548:╈ 2549:╉ 2550:═ 2551:║
2552:╒ 2553:╓ 2554:╔ 2555:╕
2556:╖ 2557:╗ 2558:╘ 2559:╙
2560:╠ 2561:╡ 2562:╢ 2563:╣
2564:╤ 2565:╥ 2566:╦ 2567:╧
2568:╨ 2569:╩ 2570:╰ 2571:╱
2572:╲ 2573:╳ 2574:╴ 2575:╵
2576:╶ 2577:╷ 2578:╸ 2579:╹
2580:▀ 2581:▁ 2582:▂ 2583:▃
2584:▄ 2585:▅ 2586:▆ 2587:▇
2588:█ 2589:▉ 2590:▐ 2591:░
2592:▒ 2593:▓ 2594:▔ 2595:▕
2596:▖ 2597:▗ 2598:▘ 2599:▙
2600:☀ 2601:☁ 2602:☂ 2603:☃
2604:☄ 2605:★ 2606:☆ 2607:☇
2608:☈ 2609:☉ 2610:☐ 2611:☑
2612:☒ 2613:☓ 2614:☔ 2615:☕
2616:☖ 2617:☗ 2618:☘ 2619:☙
2620:☠ 2621:☡ 2622:☢ 2623:☣
2624:☤ 2625:☥ 2626:☦ 2627:☧
2628:☨ 2629:☩ 2630:☰ 2631:☱
2632:☲ 2633:☳ 2634:☴ 2635:☵
2636:☶ 2637:☷ 2638:☸ 2639:☹
2640:♀ 2641:♁ 2642:♂ 2643:♃
2644:♄ 2645:♅ 2646:♆ 2647:♇
2648:♈ 2649:♉ 2650:♐ 2651:♑
2652:♒ 2653:♓ 2654:♔ 2655:♕
2656:♖ 2657:♗ 2658:♘ 2659:♙
2660:♠ 2661:♡ 2662:♢ 2663:♣
2664:♤ 2665:♥ 2666:♦ 2667:♧
2668:♨ 2669:♩ 2670:♰ 2671:♱
2672:♲ 2673:♳ 2674:♴ 2675:♵
2676:♶ 2677:♷ 2678:♸ 2679:♹
2680:⚀ 2681:⚁ 2682:⚂ 2683:⚃
2684:⚄ 2685:⚅ 2686:⚆ 2687:⚇
2688:⚈ 2689:⚉ 2690:⚐ 2691:⚑
2692:⚒ 2693:⚓ 2694:⚔ 2695:⚕
2696:⚖ 2697:⚗ 2698:⚘ 2699:⚙
2700:✀ 2701:✁ 2702:✂ 2703:✃
2704:✄ 2705:✅ 2706:✆ 2707:✇
2708:✈ 2709:✉ 2710:✐ 2711:✑
2712:✒ 2713:✓ 2714:✔ 2715:✕
2716:✖ 2717:✗ 2718:✘ 2719:✙
2720:✠ 2721:✡ 2722:✢ 2723:✣
2724:✤ 2725:✥ 2726:✦ 2727:✧
2728:✨ 2729:✩ 2730:✰ 2731:✱
2732:✲ 2733:✳ 2734:✴ 2735:✵
2736:✶ 2737:✷ 2738:✸ 2739:✹
2740:❀ 2741:❁ 2742:❂ 2743:❃
2744:❄ 2745:❅ 2746:❆ 2747:❇
2748:❈ 2749:❉ 2750:❐ 2751:❑
2752:❒ 2753:❓ 2754:❔ 2755:❕
2756:❖ 2757:❗ 2758:❘ 2759:❙
2760:❠ 2761:❡ 2762:❢ 2763:❣
2764:❤ 2765:❥ 2766:❦ 2767:❧
2768:❨ 2769:❩ 2770:❰ 2771:❱
2772:❲ 2773:❳ 2774:❴ 2775:❵
2776:❶ 2777:❷ 2778:❸ 2779:❹
2780:➀ 2781:➁ 2782:➂ 2783:➃
2784:➄ 2785:➅ 2786:➆ 2787:➇
2788:➈ 2789:➉ 2790:➐ 2791:➑
2792:➒ 2793:➓ 2794:➔ 2795:➕
2796:➖ 2797:➗ 2798:➘ 2799:➙
2800:⠀ 2801:⠁ 2802:⠂ 2803:⠃
2804:⠄ 2805:⠅ 2806:⠆ 2807:⠇
2808:⠈ 2809:⠉ 2810:⠐ 2811:⠑
2812:⠒ 2813:⠓ 2814:⠔ 2815:⠕
2816:⠖ 2817:⠗ 2818:⠘ 2819:⠙
2820:⠠ 2821:⠡ 2822:⠢ 2823:⠣
2824:⠤ 2825:⠥ 2826:⠦ 2827:⠧
2828:⠨ 2829:⠩ 2830:⠰ 2831:⠱
2832:⠲ 2833:⠳ 2834:⠴ 2835:⠵
2836:⠶ 2837:⠷ 2838:⠸ 2839:⠹
2840:⡀ 2841:⡁ 2842:⡂ 2843:⡃
2844:⡄ 2845:⡅ 2846:⡆ 2847:⡇
2848:⡈ 2849:⡉ 2850:⡐ 2851:⡑
2852:⡒ 2853:⡓ 2854:⡔ 2855:⡕
2856:⡖ 2857:⡗ 2858:⡘ 2859:⡙
2860:⡠ 2861:⡡ 2862:⡢ 2863:⡣
2864:⡤ 2865:⡥ 2866:⡦ 2867:⡧
2868:⡨ 2869:⡩ 2870:⡰ 2871:⡱
2872:⡲ 2873:⡳ 2874:⡴ 2875:⡵
2876:⡶ 2877:⡷ 2878:⡸ 2879:⡹
2880:⢀ 2881:⢁ 2882:⢂ 2883:⢃
2884:⢄ 2885:⢅ 2886:⢆ 2887:⢇
2888:⢈ 2889:⢉ 2890:⢐ 2891:⢑
2892:⢒ 2893:⢓ 2894:⢔ 2895:⢕
2896:⢖ 2897:⢗ 2898:⢘ 2899:⢙
2900:⤀ 2901:⤁ 2902:⤂ 2903:⤃
2904:⤄ 2905:⤅ 2906:⤆ 2907:⤇
2908:⤈ 2909:⤉ 2910:⤐ 2911:⤑
2912:⤒ 2913:⤓ 2914:⤔ 2915:⤕
2916:⤖ 2917:⤗ 2918:⤘ 2919:⤙
2920:⤠ 2921:⤡ 2922:⤢ 2923:⤣
2924:⤤ 2925:⤥ 2926:⤦ 2927:⤧
2928:⤨ 2929:⤩ 2930:⤰ 2931:⤱
2932:⤲ 2933:⤳ 2934:⤴ 2935:⤵
2936:⤶ 2937:⤷ 2938:⤸ 2939:⤹
2940:⥀ 2941:⥁ 2942:⥂ 2943:⥃
2944:⥄ 2945:⥅ 2946:⥆ 2947:⥇
2948:⥈ 2949:⥉ 2950:⥐ 2951:⥑
2952:⥒ 2953:⥓ 2954:⥔ 2955:⥕
2956:⥖ 2957:⥗ 2958:⥘ 2959:⥙
2960:⥠ 2961:⥡ 2962:⥢ 2963:⥣
2964:⥤ 2965:⥥ 2966:⥦ 2967:⥧
2968:⥨ 2969:⥩ 2970:⥰ 2971:⥱
2972:⥲ 2973:⥳ 2974:⥴ 2975:⥵
2976:⥶ 2977:⥷ 2978:⥸ 2979:⥹
2980:⦀ 2981:⦁ 2982:⦂ 2983:⦃
2984:⦄ 2985:⦅ 2986:⦆ 2987:⦇
2988:⦈ 2989:⦉ 2990:⦐ 2991:⦑
2992:⦒ 2993:⦓ 2994:⦔ 2995:⦕
2996:⦖ 2997:⦗ 2998:⦘ 2999:⦙
3000: 3001:、 3002:。 3003:〃
Inbuilt method and basic string operation
In this section we are view how to modified string text to special format and how to manipulate string in different scenario.
String text iteration
There is two way we can iterate string text of using for-in and while loops. most of cases for-in are flexible. Here include example how to used for-in and while loop for string iteration.
let textData = "Swift 4"
print("Using for loop")
//Using for-in loop
for charValue in textData{
print(charValue)
}
var index = textData.startIndex
print("Using while loop")
//Using while loop
while index != textData.endIndex {
print(textData[index])
index = textData.index(after: index)
}
Output
Using for loop
S
w
i
f
t
4
Using while loop
S
w
i
f
t
4
Concatenation of string
let language = "Swift"
let typeSet = "Programming"
let combineCode = language+" "+typeSet //concatenation of strings
print("language: \(language)")
print("typeSet: \(typeSet)")
print("combineCode: \(combineCode)")
Output
language: Swift
typeSet: Programming
combineCode: Swift Programming
+ sign are used to concatenation of two strings. We can also use inbuilt method which are add text to mutable string variables. See this example.
var address = "XY City mini park nearby sun complex"
address.append(" Pin Code xx-yy-zz") //add text to end position
print("\(address)")
Output
XY City mini park nearby sun complex Pin Code-xx-yy-zz
We can also implement a method which are add text at beginning of text object. See this example.
//add new feature of String class
extension String {
//Add text at begining of string
mutating func prepend(_ rhs:String){
self=rhs+self
}
}
var textString="ABC"
textString.prepend("XYZ")
print(textString) //XYZABC
Note that this method are cannot work of an immutable variable and both constant literals.
Get number of characters:
let a="Swift"
let b="Programming Code"
print("Size of a: \(a.count)")//5
print("Size of b: \(b.count)") //16 include space
Output
Size of a: 5
Size of b: 16
Swift are supported various formats of characters. such as String characters , unicodeScalars , utf8 , and utf16. In above example is normal form of String. and count are returning the number of characters string. See another example to get length of string in another format.
let text="Sw⦔!"
print(" \(text.count)") //4
print(" \(text.utf16.count)") //4
print(" \(text.utf8.count)") //6
print(" \(text.unicodeScalars.count)") //4
print(" \(text.utf16.count)") //4
Output
4
4
6
4
4
All uppercase character
let textString = "Hello World!" // String literal
print(textString.uppercased()) //make all uppercase characters
Output
HELLO WORLD!
All lowercase character
let textString = "HELLO World!" // String literal
print(textString.lowercased()) //make all lowercase characters
Output
hello world!
Reversing Strings Text
let simpleText="ABCDE"
let reverseText=String(simpleText.reversed())
print("\(simpleText) vs \(reverseText)")
Output
ABCDE vs EDCBA
Split string Text
let myText = "Swift Code 4"
let myTextArray = myText.split(separator : " ")
print(myTextArray) //["Swift", "Code", "4"]
Output
["Swift", "Code", "4"]
Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.
New Comment