CINXE.COM
Delimiter - Wikipedia
<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available" lang="en" dir="ltr"> <head> <meta charset="UTF-8"> <title>Delimiter - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )enwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy", "wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"1d6d2b0d-7af3-405c-9d40-3d12b39b3c51","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Delimiter","wgTitle":"Delimiter","wgCurRevisionId":1215698820,"wgRevisionId":1215698820,"wgArticleId":564276,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["CS1 maint: numeric names: authors list","Articles with short description","Short description is different from Wikidata","All articles with unsourced statements","Articles with unsourced statements from February 2024","Articles with unsourced statements from March 2014","Markup languages","Pattern matching","Programming constructs","String (computer science)"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"Delimiter", "wgRelevantArticleId":564276,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgRedirectedFrom":"Delimiters","wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":false,"wgFlaggedRevsParams":{"tags":{"status":{"levels":1}}},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":false,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":20000,"wgInternalRedirectTargetUrl":"/wiki/Delimiter","wgRelatedArticlesCompat":[],"wgCentralAuthMobileDomain":false,"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q1641420","wgCheckUserClientHintsHeadersJsApi":[ "brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","ext.math.styles":"ready","ext.pygments":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["mediawiki.action.view.redirect","ext.cite.ux-enhancements","ext.pygments.view","mediawiki.page.media","site","mediawiki.page.ready","mediawiki.toc","skins.vector.js", "ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.ReferenceTooltips","ext.gadget.switcher","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=en&modules=ext.cite.styles%7Cext.math.styles%7Cext.pygments%2CwikimediaBadges%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&only=styles&skin=vector-2022"> <script async="" src="/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=en&modules=site.styles&only=styles&skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.4"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/7/73/Csv_delimited000.svg/1200px-Csv_delimited000.svg.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="1200"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/7/73/Csv_delimited000.svg/800px-Csv_delimited000.svg.png"> <meta property="og:image:width" content="800"> <meta property="og:image:height" content="800"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/7/73/Csv_delimited000.svg/640px-Csv_delimited000.svg.png"> <meta property="og:image:width" content="640"> <meta property="og:image:height" content="640"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="Delimiter - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//en.m.wikipedia.org/wiki/Delimiter"> <link rel="alternate" type="application/x-wiki" title="Edit this page" href="/w/index.php?title=Delimiter&action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (en)"> <link rel="EditURI" type="application/rsd+xml" href="//en.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://en.wikipedia.org/wiki/Delimiter"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en"> <link rel="alternate" type="application/atom+xml" title="Wikipedia Atom feed" href="/w/index.php?title=Special:RecentChanges&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-Delimiter rootpage-Delimiter skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Jump to content</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Main menu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Main menu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Main menu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">hide</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Main_Page" title="Visit the main page [z]" accesskey="z"><span>Main page</span></a></li><li id="n-contents" class="mw-list-item"><a href="/wiki/Wikipedia:Contents" title="Guides to browsing Wikipedia"><span>Contents</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Portal:Current_events" title="Articles related to current events"><span>Current events</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Special:Random" title="Visit a randomly selected article [x]" accesskey="x"><span>Random article</span></a></li><li id="n-aboutsite" class="mw-list-item"><a href="/wiki/Wikipedia:About" title="Learn about Wikipedia and how it works"><span>About Wikipedia</span></a></li><li id="n-contactpage" class="mw-list-item"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us" title="How to contact Wikipedia"><span>Contact us</span></a></li> </ul> </div> </div> <div id="p-interaction" class="vector-menu mw-portlet mw-portlet-interaction" > <div class="vector-menu-heading"> Contribute </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Help:Contents" title="Guidance on how to use and edit Wikipedia"><span>Help</span></a></li><li id="n-introduction" class="mw-list-item"><a href="/wiki/Help:Introduction" title="Learn how to edit Wikipedia"><span>Learn to edit</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:Community_portal" title="The hub for editors"><span>Community portal</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Special:RecentChanges" title="A list of recent changes to Wikipedia [r]" accesskey="r"><span>Recent changes</span></a></li><li id="n-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_upload_wizard" title="Add images or other media for use on Wikipedia"><span>Upload file</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Main_Page" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="The Free Encyclopedia" src="/static/images/mobile/copyright/wikipedia-tagline-en.svg" width="117" height="13" style="width: 7.3125em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Special:Search" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Search Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search Wikipedia" aria-label="Search Wikipedia" autocapitalize="sentences" title="Search Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Personal tools"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Change the appearance of the page's font size, width, and color" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Appearance" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Appearance</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_en.wikipedia.org&uselang=en" class=""><span>Donate</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:CreateAccount&returnto=Delimiter" title="You are encouraged to create an account and log in; however, it is not mandatory" class=""><span>Create account</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogin&returnto=Delimiter" title="You're encouraged to log in; however, it's not mandatory. [o]" accesskey="o" class=""><span>Log in</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Log in and more options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personal tools" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personal tools</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="User menu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_en.wikipedia.org&uselang=en"><span>Donate</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:CreateAccount&returnto=Delimiter" title="You are encouraged to create an account and log in; however, it is not mandatory"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Create account</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:UserLogin&returnto=Delimiter" title="You're encouraged to log in; however, it's not mandatory. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Log in</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pages for logged out editors <a href="/wiki/Help:Introduction" aria-label="Learn more about editing"><span>learn more</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Special:MyContributions" title="A list of edits made from this IP address [y]" accesskey="y"><span>Contributions</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Special:MyTalk" title="Discussion about edits from this IP address [n]" accesskey="n"><span>Talk</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Contents" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Contents</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">hide</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">(Top)</div> </a> </li> <li id="toc-Overview" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Overview"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Overview</span> </div> </a> <button aria-controls="toc-Overview-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Overview subsection</span> </button> <ul id="toc-Overview-sublist" class="vector-toc-list"> <li id="toc-Field_and_record_delimiters" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Field_and_record_delimiters"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.1</span> <span>Field and record delimiters</span> </div> </a> <ul id="toc-Field_and_record_delimiters-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Bracket_delimiters" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Bracket_delimiters"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.2</span> <span>Bracket delimiters</span> </div> </a> <ul id="toc-Bracket_delimiters-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Conventions" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Conventions"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.3</span> <span>Conventions</span> </div> </a> <ul id="toc-Conventions-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Delimiter_collision" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Delimiter_collision"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Delimiter collision</span> </div> </a> <button aria-controls="toc-Delimiter_collision-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Delimiter collision subsection</span> </button> <ul id="toc-Delimiter_collision-sublist" class="vector-toc-list"> <li id="toc-Solutions" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Solutions"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1</span> <span>Solutions</span> </div> </a> <ul id="toc-Solutions-sublist" class="vector-toc-list"> <li id="toc-ASCII_delimited_text" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#ASCII_delimited_text"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.1</span> <span>ASCII delimited text</span> </div> </a> <ul id="toc-ASCII_delimited_text-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Escape_character" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Escape_character"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.2</span> <span>Escape character</span> </div> </a> <ul id="toc-Escape_character-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Escape_sequence" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Escape_sequence"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.3</span> <span>Escape sequence</span> </div> </a> <ul id="toc-Escape_sequence-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Dual_quoting_delimiters" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Dual_quoting_delimiters"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.4</span> <span>Dual quoting delimiters</span> </div> </a> <ul id="toc-Dual_quoting_delimiters-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Padding_quoting_delimiters" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Padding_quoting_delimiters"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.5</span> <span>Padding quoting delimiters</span> </div> </a> <ul id="toc-Padding_quoting_delimiters-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Configurable_alternative_quoting_delimiters" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Configurable_alternative_quoting_delimiters"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.6</span> <span>Configurable alternative quoting delimiters</span> </div> </a> <ul id="toc-Configurable_alternative_quoting_delimiters-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Content_boundary" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Content_boundary"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.7</span> <span>Content boundary</span> </div> </a> <ul id="toc-Content_boundary-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Whitespace_or_indentation" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Whitespace_or_indentation"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.8</span> <span>Whitespace or indentation</span> </div> </a> <ul id="toc-Whitespace_or_indentation-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Regular_expression_syntax" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Regular_expression_syntax"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.9</span> <span>Regular expression syntax</span> </div> </a> <ul id="toc-Regular_expression_syntax-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Here_document" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Here_document"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.10</span> <span>Here document</span> </div> </a> <ul id="toc-Here_document-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-ASCII_armor" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#ASCII_armor"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.11</span> <span>ASCII armor</span> </div> </a> <ul id="toc-ASCII_armor-sublist" class="vector-toc-list"> <li id="toc-Example" class="vector-toc-list-item vector-toc-level-4"> <a class="vector-toc-link" href="#Example"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1.11.1</span> <span>Example</span> </div> </a> <ul id="toc-Example-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> </ul> </li> </ul> </li> <li id="toc-See_also" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#See_also"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>See also</span> </div> </a> <ul id="toc-See_also-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-References" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#References"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>References</span> </div> </a> <ul id="toc-References-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-External_links" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#External_links"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>External links</span> </div> </a> <ul id="toc-External_links-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Delimiter</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Go to an article in another language. Available in 14 languages" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-14" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">14 languages</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-az mw-list-item"><a href="https://az.wikipedia.org/wiki/Limitl%C9%99%C5%9Fdirici" title="Limitləşdirici – Azerbaijani" lang="az" hreflang="az" data-title="Limitləşdirici" data-language-autonym="Azərbaycanca" data-language-local-name="Azerbaijani" class="interlanguage-link-target"><span>Azərbaycanca</span></a></li><li class="interlanguage-link interwiki-cs mw-list-item"><a href="https://cs.wikipedia.org/wiki/Odd%C4%9Blova%C4%8D" title="Oddělovač – Czech" lang="cs" hreflang="cs" data-title="Oddělovač" data-language-autonym="Čeština" data-language-local-name="Czech" class="interlanguage-link-target"><span>Čeština</span></a></li><li class="interlanguage-link interwiki-de mw-list-item"><a href="https://de.wikipedia.org/wiki/Trennzeichen" title="Trennzeichen – German" lang="de" hreflang="de" data-title="Trennzeichen" data-language-autonym="Deutsch" data-language-local-name="German" class="interlanguage-link-target"><span>Deutsch</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%D8%AD%D8%A7%D8%A6%D9%84_(%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87)" title="حائل (رایانه) – Persian" lang="fa" hreflang="fa" data-title="حائل (رایانه)" data-language-autonym="فارسی" data-language-local-name="Persian" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/S%C3%A9parateur_(informatique)" title="Séparateur (informatique) – French" lang="fr" hreflang="fr" data-title="Séparateur (informatique)" data-language-autonym="Français" data-language-local-name="French" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://ko.wikipedia.org/wiki/%EA%B5%AC%EB%B6%84_%EB%AC%B8%EC%9E%90" title="구분 문자 – Korean" lang="ko" hreflang="ko" data-title="구분 문자" data-language-autonym="한국어" data-language-local-name="Korean" class="interlanguage-link-target"><span>한국어</span></a></li><li class="interlanguage-link interwiki-kk mw-list-item"><a href="https://kk.wikipedia.org/wiki/%D0%91%D3%A9%D0%BB%D1%96%D0%BA%D1%82%D0%B5%D0%B3%D1%96%D1%88" title="Бөліктегіш – Kazakh" lang="kk" hreflang="kk" data-title="Бөліктегіш" data-language-autonym="Қазақша" data-language-local-name="Kazakh" class="interlanguage-link-target"><span>Қазақша</span></a></li><li class="interlanguage-link interwiki-sw mw-list-item"><a href="https://sw.wikipedia.org/wiki/Kitenganishi" title="Kitenganishi – Swahili" lang="sw" hreflang="sw" data-title="Kitenganishi" data-language-autonym="Kiswahili" data-language-local-name="Swahili" class="interlanguage-link-target"><span>Kiswahili</span></a></li><li class="interlanguage-link interwiki-ja mw-list-item"><a href="https://ja.wikipedia.org/wiki/%E5%8C%BA%E5%88%87%E3%82%8A%E6%96%87%E5%AD%97" title="区切り文字 – Japanese" lang="ja" hreflang="ja" data-title="区切り文字" data-language-autonym="日本語" data-language-local-name="Japanese" class="interlanguage-link-target"><span>日本語</span></a></li><li class="interlanguage-link interwiki-no mw-list-item"><a href="https://no.wikipedia.org/wiki/Skilletegn" title="Skilletegn – Norwegian Bokmål" lang="nb" hreflang="nb" data-title="Skilletegn" data-language-autonym="Norsk bokmål" data-language-local-name="Norwegian Bokmål" class="interlanguage-link-target"><span>Norsk bokmål</span></a></li><li class="interlanguage-link interwiki-pl mw-list-item"><a href="https://pl.wikipedia.org/wiki/Separator_(informatyka)" title="Separator (informatyka) – Polish" lang="pl" hreflang="pl" data-title="Separator (informatyka)" data-language-autonym="Polski" data-language-local-name="Polish" class="interlanguage-link-target"><span>Polski</span></a></li><li class="interlanguage-link interwiki-uk mw-list-item"><a href="https://uk.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B7%D0%B4%D1%96%D0%BB%D1%8E%D0%B2%D0%B0%D0%BB%D1%8C%D0%BD%D0%B8%D0%B9_%D1%81%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB" title="Розділювальний символ – Ukrainian" lang="uk" hreflang="uk" data-title="Розділювальний символ" data-language-autonym="Українська" data-language-local-name="Ukrainian" class="interlanguage-link-target"><span>Українська</span></a></li><li class="interlanguage-link interwiki-zh-yue mw-list-item"><a href="https://zh-yue.wikipedia.org/wiki/%E5%88%86%E9%9A%94%E5%AD%97%E7%AC%A6" title="分隔字符 – Cantonese" lang="yue" hreflang="yue" data-title="分隔字符" data-language-autonym="粵語" data-language-local-name="Cantonese" class="interlanguage-link-target"><span>粵語</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/%E5%88%86%E9%9A%94%E5%8F%B7" title="分隔号 – Chinese" lang="zh" hreflang="zh" data-title="分隔号" data-language-autonym="中文" data-language-local-name="Chinese" class="interlanguage-link-target"><span>中文</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q1641420#sitelinks-wikipedia" title="Edit interlanguage links" class="wbc-editpage">Edit links</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespaces"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Delimiter" title="View the content page [c]" accesskey="c"><span>Article</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Talk:Delimiter" rel="discussion" title="Discuss improvements to the content page [t]" accesskey="t"><span>Talk</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Change language variant" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Views"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Delimiter"><span>Read</span></a></li><li id="ca-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Delimiter&action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Delimiter&action=history" title="Past revisions of this page [h]" accesskey="h"><span>View history</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Tools" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Tools</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Tools</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">hide</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="More options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/Delimiter"><span>Read</span></a></li><li id="ca-more-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Delimiter&action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Delimiter&action=history"><span>View history</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> General </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Special:WhatLinksHere/Delimiter" title="List of all English Wikipedia pages containing links to this page [j]" accesskey="j"><span>What links here</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Special:RecentChangesLinked/Delimiter" rel="nofollow" title="Recent changes in pages linked from this page [k]" accesskey="k"><span>Related changes</span></a></li><li id="t-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_Upload_Wizard" title="Upload files [u]" accesskey="u"><span>Upload file</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Special:SpecialPages" title="A list of all special pages [q]" accesskey="q"><span>Special pages</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Delimiter&oldid=1215698820" title="Permanent link to this revision of this page"><span>Permanent link</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Delimiter&action=info" title="More information about this page"><span>Page information</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Special:CiteThisPage&page=Delimiter&id=1215698820&wpFormIdentifier=titleform" title="Information on how to cite this page"><span>Cite this page</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Special:UrlShortener&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FDelimiter"><span>Get shortened URL</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Special:QrCode&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FDelimiter"><span>Download QR code</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Print/export </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Special:DownloadAsPdf&page=Delimiter&action=show-download-screen" title="Download this page as a PDF file"><span>Download as PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=Delimiter&printable=yes" title="Printable version of this page [p]" accesskey="p"><span>Printable version</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> In other projects </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q1641420" title="Structured data on this page hosted by Wikidata [g]" accesskey="g"><span>Wikidata item</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Appearance</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">hide</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">From Wikipedia, the free encyclopedia</div> </div> <div id="contentSub"><div id="mw-content-subtitle"><span class="mw-redirectedfrom">(Redirected from <a href="/w/index.php?title=Delimiters&redirect=no" class="mw-redirect" title="Delimiters">Delimiters</a>)</span></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><div class="shortdescription nomobile noexcerpt noprint searchaux" style="display:none">Characters that specify the boundary between regions in a data stream</div> <style data-mw-deduplicate="TemplateStyles:r1236090951">.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}</style><div role="note" class="hatnote navigation-not-searchable">This article is about delimiters in computing. For delimiters in human use, see <a href="/wiki/Word_divider" title="Word divider">Word divider</a> and <a href="/wiki/Digit_grouping" class="mw-redirect" title="Digit grouping">digit grouping</a>.</div> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:Csv_delimited000.svg" class="mw-file-description"><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/7/73/Csv_delimited000.svg/220px-Csv_delimited000.svg.png" decoding="async" width="220" height="220" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/7/73/Csv_delimited000.svg/330px-Csv_delimited000.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/7/73/Csv_delimited000.svg/440px-Csv_delimited000.svg.png 2x" data-file-width="113" data-file-height="113" /></a><figcaption>A stylistic depiction of values inside of a so-named <a href="/wiki/Comma-separated_values" title="Comma-separated values">comma-separated values</a> (CSV) text file. The commas (shown in red) are used as field delimiters.</figcaption></figure> <p>A <b>delimiter</b> is a sequence of one or more <a href="/wiki/Character_(computing)" title="Character (computing)">characters</a> for specifying the boundary between separate, independent regions in <a href="/wiki/Plain_text" title="Plain text">plain text</a>, <a href="/wiki/Expression_(mathematics)" title="Expression (mathematics)">mathematical expressions</a> or other <a href="/wiki/Data_stream" title="Data stream">data streams</a>.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> An example of a delimiter is the <a href="/wiki/Comma" title="Comma">comma</a> character, which acts as a <i>field delimiter</i> in a sequence of <a href="/wiki/Comma-separated_values" title="Comma-separated values">comma-separated values</a>. Another example of a delimiter is the time gap used to separate letters and words in the transmission of <a href="/wiki/Morse_code" title="Morse code">Morse code</a>.<sup class="noprint Inline-Template Template-Fact" style="white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="time gap is not a character (February 2024)">citation needed</span></a></i>]</sup> </p><p>In <a href="/wiki/Mathematics" title="Mathematics">mathematics</a>, delimiters are often used to specify the scope of an <a href="/wiki/Operation_(mathematics)" title="Operation (mathematics)">operation</a>, and can occur both as isolated symbols (e.g., <a href="/wiki/Colon_(punctuation)" title="Colon (punctuation)">colon</a> in "<span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 1:4}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mn>1</mn> <mo>:</mo> <mn>4</mn> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle 1:4}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/1850cfb15f5c786cf5a76a78ed875cfc0e1d71c1" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:4.262ex; height:2.176ex;" alt="{\displaystyle 1:4}"></span>") and as a pair of opposing-looking symbols (e.g., <a href="/wiki/Angled_bracket" class="mw-redirect" title="Angled bracket">angled brackets</a> in <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \langle a,b\rangle }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo fence="false" stretchy="false">⟨<!-- ⟨ --></mo> <mi>a</mi> <mo>,</mo> <mi>b</mi> <mo fence="false" stretchy="false">⟩<!-- ⟩ --></mo> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \langle a,b\rangle }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/59f9c6fc93d2e4195b610bc8a9ff366be4485387" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:5.071ex; height:2.843ex;" alt="{\displaystyle \langle a,b\rangle }"></span>). </p><p>Delimiters represent one of various means of specifying boundaries in a <a href="/wiki/Data_stream" title="Data stream">data stream</a>. <a href="/wiki/String_literal#Declarative_notation" title="String literal">Declarative notation</a>, for example, is an alternate method (without the use of delimiters) that uses a length field at the start of a data stream to specify the number of characters that the data stream contains.<sup id="cite_ref-hollerity_3-0" class="reference"><a href="#cite_note-hollerity-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="Overview">Overview</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=1" title="Edit section: Overview"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Delimiters may be characterized as field and record delimiters, or as bracket delimiters. </p> <div class="mw-heading mw-heading3"><h3 id="Field_and_record_delimiters">Field and record delimiters</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=2" title="Edit section: Field and record delimiters"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Field delimiters separate data fields. Record delimiters separate groups of fields.<sup id="cite_ref-FldDelm_4-0" class="reference"><a href="#cite_note-FldDelm-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> </p><p>For example, the <a href="/wiki/Comma-separated_values" title="Comma-separated values">CSV format</a> uses a comma as the delimiter between <a href="/wiki/Field_(computer_science)" title="Field (computer science)">fields</a>, and an <a href="/wiki/End-of-line" class="mw-redirect" title="End-of-line">end-of-line</a> indicator as the delimiter between <a href="/wiki/Row_(database)" title="Row (database)">records</a>: </p> <pre>fname,lname,age,salary nancy,davolio,33,$30000 erin,borakova,28,$25250 tony,raphael,35,$28700 </pre> <p>This specifies a simple <a href="/wiki/Flat-file_database" title="Flat-file database">flat-file database</a> <a href="/wiki/Table_(information)" title="Table (information)">table</a> using the CSV file format. </p> <div class="mw-heading mw-heading3"><h3 id="Bracket_delimiters">Bracket delimiters</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=3" title="Edit section: Bracket delimiters"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Bracket delimiters, also called block delimiters, region delimiters, or balanced delimiters, mark both the start and end of a region of text.<sup id="cite_ref-BalaDelm_5-0" class="reference"><a href="#cite_note-BalaDelm-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-Scott000_6-0" class="reference"><a href="#cite_note-Scott000-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> </p><p>Common examples of bracket delimiters include:<sup id="cite_ref-programmingperl_7-0" class="reference"><a href="#cite_note-programmingperl-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> </p> <table class="wikitable"> <tbody><tr> <th>Delimiters </th> <th style="text-align:left">Description </th></tr> <tr> <th><code>(</code> <code>)</code> </th> <td><a href="/wiki/Bracket#Parentheses" title="Bracket">Parentheses</a>. The <a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a> programming language syntax is cited as recognizable primarily by its use of parentheses.<sup id="cite_ref-Kaufmann000_8-0" class="reference"><a href="#cite_note-Kaufmann000-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><code>{</code> <code>}</code> </th> <td>Braces (also called <a href="/wiki/Bracket#Curly_brackets" title="Bracket">curly brackets</a><sup id="cite_ref-curly_brace_cstyle_9-0" class="reference"><a href="#cite_note-curly_brace_cstyle-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup>). </td></tr> <tr> <th><code>[</code> <code>]</code> </th> <td>Brackets (commonly used to denote a subscript). </td></tr> <tr> <th><code><</code> <code>></code> </th> <td><a href="/wiki/Bracket#Angle_brackets" title="Bracket">Angle brackets</a>.<sup id="cite_ref-id_1268443793898_27_10-0" class="reference"><a href="#cite_note-id_1268443793898_27-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><code>"</code> <code>"</code> </th> <td>commonly used to denote <a href="/wiki/String_literal" title="String literal">string literals</a>.<sup id="cite_ref-id_1268443910269_75_11-0" class="reference"><a href="#cite_note-id_1268443910269_75-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><code>'</code> <code>'</code> </th> <td>commonly used to denote <a href="/wiki/Character_literal" title="Character literal">character literals</a>.<sup id="cite_ref-id_1268443910269_75_11-1" class="reference"><a href="#cite_note-id_1268443910269_75-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><code><?</code> <code>?></code> </th> <td>used to indicate XML <a href="/wiki/Processing_instruction" class="mw-redirect" title="Processing instruction">processing instructions</a>.<sup id="cite_ref-id_1268443998814_32_12-0" class="reference"><a href="#cite_note-id_1268443998814_32-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><code>/*</code> <code>*/</code> </th> <td>used to denote <a href="/wiki/Comment_(computer_programming)" title="Comment (computer programming)">comments</a> in some programming languages.<sup id="cite_ref-id_1268444112328_77_13-0" class="reference"><a href="#cite_note-id_1268444112328_77-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><code><%</code> <code>%></code> </th> <td>used in some <a href="/wiki/Web_template" class="mw-redirect" title="Web template">web templates</a> to specify language boundaries.<sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup> </td></tr></tbody></table> <div class="mw-heading mw-heading3"><h3 id="Conventions">Conventions</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=4" title="Edit section: Conventions"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Historically, computing platforms have used certain delimiters by convention.<sup id="cite_ref-15" class="reference"><a href="#cite_note-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup> The following tables depict a few examples for comparison. </p><p><b>Programming languages</b> (<i>See also</i>, <a href="/wiki/Comparison_of_programming_languages_(syntax)" title="Comparison of programming languages (syntax)">Comparison of programming languages (syntax)</a>). </p> <table class="wikitable"> <tbody><tr> <th></th> <th>String Literal</th> <th>End of Statement </th></tr> <tr> <th>Pascal </th> <td>singlequote</td> <td>semicolon </td></tr> <tr> <th>Python </th> <td>doublequote, singlequote</td> <td><a href="/wiki/End_of_line" class="mw-redirect" title="End of line">end of line</a> (EOL) </td></tr> </tbody></table> <p><b>Field and Record delimiters</b> (<i>See also</i>, <a href="/wiki/ASCII" title="ASCII">ASCII</a>, <a href="/wiki/Control_character" title="Control character">Control character</a>). </p> <table class="wikitable"> <tbody><tr> <th></th> <th>End of Field</th> <th>End of Record</th> <th>End of File </th></tr> <tr> <th><a href="/wiki/Unix-like" title="Unix-like">Unix-like</a> systems including <a href="/wiki/MacOS" title="MacOS">macOS</a>, <a href="/wiki/AmigaOS" title="AmigaOS">AmigaOS</a> </th> <td><a href="/wiki/Tab_key" title="Tab key">Tab</a></td> <td><a href="/wiki/Line_feed" class="mw-redirect" title="Line feed">LF</a></td> <td>none </td></tr> <tr> <th><a href="/wiki/Windows" class="mw-redirect" title="Windows">Windows</a>, <a href="/wiki/MS-DOS" title="MS-DOS">MS-DOS</a>, <a href="/wiki/OS/2" title="OS/2">OS/2</a>, <a href="/wiki/CP/M" title="CP/M">CP/M</a> </th> <td><a href="/wiki/Tab_key" title="Tab key">Tab</a></td> <td><a href="/wiki/CRLF" class="mw-redirect" title="CRLF">CRLF</a></td> <td>none (except in CP/M), <a href="/wiki/Control-Z" class="mw-redirect" title="Control-Z">Control-Z</a><sup id="cite_ref-id_1268444696385_5_17-0" class="reference"><a href="#cite_note-id_1268444696385_5-17"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/Classic_Mac_OS" title="Classic Mac OS">Classic Mac OS</a>, <a href="/wiki/Apple_DOS" title="Apple DOS">Apple DOS</a>, <a href="/wiki/ProDOS" class="mw-redirect" title="ProDOS">ProDOS</a>, <a href="/wiki/GS/OS" class="mw-redirect" title="GS/OS">GS/OS</a> </th> <td><a href="/wiki/Tab_key" title="Tab key">Tab</a></td> <td><a href="/wiki/Carriage_return" title="Carriage return">CR</a></td> <td>none </td></tr> <tr> <th>ASCII/Unicode </th> <td><a href="/wiki/C0_and_C1_control_codes#Field_separators" title="C0 and C1 control codes">UNIT SEPARATOR</a><br />Position 31 (U+001F)</td> <td>RECORD SEPARATOR<br />Position 30 (U+001E)</td> <td>FILE SEPARATOR<br />Position 28 (U+001C) </td></tr></tbody></table> <div class="mw-heading mw-heading2"><h2 id="Delimiter_collision">Delimiter collision</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=5" title="Edit section: Delimiter collision"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><b>Delimiter collision</b> is a problem that occurs when an author or programmer introduces delimiters into text without actually intending them to be interpreted as boundaries between separate regions.<sup id="cite_ref-FldDelm_4-1" class="reference"><a href="#cite_note-FldDelm-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-mre_embed_problem_18-0" class="reference"><a href="#cite_note-mre_embed_problem-18"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup> In the case of XML, for example, this can occur whenever an author attempts to specify an <a href="/wiki/Angle_bracket" class="mw-redirect" title="Angle bracket">angle bracket</a> character. </p><p>In most file types there is both a field delimiter and a record delimiter, both of which are subject to collision. In the case of <a href="/wiki/Comma-separated_values" title="Comma-separated values">comma-separated values</a> files, for example, field collision can occur whenever an author attempts to include a comma as part of a field value (e.g., salary = "$30,000"), and record delimiter collision would occur whenever a field contained multiple lines. Both record and field delimiter collision occur frequently in text files. </p><p>In some contexts, a malicious user or attacker may seek to exploit this problem intentionally. Consequently, delimiter collision can be the source of security <a href="/wiki/Vulnerability_(computing)" class="mw-redirect" title="Vulnerability (computing)">vulnerabilities</a> and <a href="/wiki/Exploit_(computer_security)" title="Exploit (computer security)">exploits</a>. Malicious users can take advantage of delimiter collision in languages such as <a href="/wiki/SQL" title="SQL">SQL</a> and <a href="/wiki/HTML" title="HTML">HTML</a> to deploy such well-known attacks as <a href="/wiki/SQL_injection" title="SQL injection">SQL injection</a> and <a href="/wiki/Cross-site_scripting" title="Cross-site scripting">cross-site scripting</a>, respectively. </p> <div class="mw-heading mw-heading3"><h3 id="Solutions">Solutions</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=6" title="Edit section: Solutions"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Because delimiter collision is a very common problem, various methods for avoiding it have been invented. Some authors may attempt to avoid the problem by choosing a delimiter character (or sequence of characters) that is not likely to appear in the data stream itself. This <i>ad hoc</i> approach may be suitable, but it necessarily depends on a correct guess of what will appear in the data stream, and offers no security against malicious collisions. Other, more formal conventions are therefore applied as well. </p> <div class="mw-heading mw-heading4"><h4 id="ASCII_delimited_text">ASCII delimited text</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=7" title="Edit section: ASCII delimited text"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The ASCII and Unicode character sets were designed to solve this problem by the provision of non-printing characters that can be used as delimiters. These are the range from ASCII 28 to 31. </p> <table class="wikitable"> <tbody><tr> <th>ASCII <a href="/wiki/Decimal" title="Decimal">Dec</a> </th> <th>Symbol </th> <th>Unicode Name </th> <th>Common Name </th> <th>Usage </th></tr> <tr> <th>28 </th> <th><span style="font-size:200%;">␜</span> </th> <td>INFORMATION SEPARATOR FOUR </td> <td><a href="/wiki/File_separator" class="mw-redirect" title="File separator">file separator</a> </td> <td>End of file. Or between a concatenation of what might otherwise be separate files. </td></tr> <tr> <th>29 </th> <th><span style="font-size:200%;">␝</span> </th> <td>INFORMATION SEPARATOR THREE </td> <td><a href="/wiki/Group_separator" class="mw-redirect" title="Group separator">group separator</a> </td> <td>Between sections of data. Not needed in simple data files. </td></tr> <tr> <th>30 </th> <th><span style="font-size:200%;">␞</span> </th> <td>INFORMATION SEPARATOR TWO </td> <td><a href="/wiki/Record_separator" class="mw-redirect" title="Record separator">record separator</a> </td> <td>End of a record or row. </td></tr> <tr> <th>31 </th> <th><span style="font-size:200%;">␟</span> </th> <td>INFORMATION SEPARATOR ONE </td> <td><a href="/wiki/Unit_separator" class="mw-redirect" title="Unit separator">unit separator</a> </td> <td>Between fields of a record, or members of a row. </td></tr></tbody></table> <p>The use of ASCII 31 <a href="/wiki/Unit_separator" class="mw-redirect" title="Unit separator">Unit separator</a> as a field separator and ASCII 30 <a href="/wiki/Record_separator" class="mw-redirect" title="Record separator">Record separator</a> solves the problem of both field and record delimiters that appear in a text data stream.<sup id="cite_ref-19" class="reference"><a href="#cite_note-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading4"><h4 id="Escape_character">Escape character</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=8" title="Edit section: Escape character"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>One method for avoiding delimiter collision is to use <a href="/wiki/Escape_character" title="Escape character">escape characters</a>. From a language design standpoint, these are adequate, but they have drawbacks: </p> <ul><li>text can be rendered unreadable when littered with numerous escape characters, a problem referred to as <a href="/wiki/Leaning_toothpick_syndrome" title="Leaning toothpick syndrome">leaning toothpick syndrome</a> (due to use of \ to escape / in <a href="/wiki/Perl" title="Perl">Perl</a> <a href="/wiki/Regular_expression" title="Regular expression">regular expressions</a>, leading to sequences such as "\/\/");</li> <li>text becomes difficult to parse through regular expression</li> <li>they require a mechanism to "escape the escapes" when not intended as escape characters; and</li> <li>although easy to type, they can be cryptic to someone unfamiliar with the language.<sup id="cite_ref-Kahrel000_20-0" class="reference"><a href="#cite_note-Kahrel000-20"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup></li> <li>they do not protect against injection attacks <sup class="noprint Inline-Template Template-Fact" style="white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (March 2014)">citation needed</span></a></i>]</sup></li></ul> <div class="mw-heading mw-heading4"><h4 id="Escape_sequence">Escape sequence</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=9" title="Edit section: Escape sequence"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Escape sequences are similar to escape characters, except they usually consist of some kind of mnemonic instead of just a single character. One use is in <a href="/wiki/String_literal" title="String literal">string literals</a> that include a doublequote (") character. For example in <a href="/wiki/Perl" title="Perl">Perl</a>, the code: </p> <div class="mw-highlight mw-highlight-lang-perl mw-content-ltr" dir="ltr"><pre><span></span><span class="k">print</span><span class="w"> </span><span class="s">"Nancy said \x22Hello World!\x22 to the crowd."</span><span class="p">;</span><span class="w"> </span><span class="c1">### use \x22</span> </pre></div> <p>produces the same output as: </p> <div class="mw-highlight mw-highlight-lang-perl mw-content-ltr" dir="ltr"><pre><span></span><span class="k">print</span><span class="w"> </span><span class="s">"Nancy said \"Hello World!\" to the crowd."</span><span class="p">;</span><span class="w"> </span><span class="c1">### use escape char</span> </pre></div> <p>One drawback of escape sequences, when used by people, is the need to memorize the codes that represent individual characters (see also: <a href="/wiki/Character_entity_reference" class="mw-redirect" title="Character entity reference">character entity reference</a>, <a href="/wiki/Numeric_character_reference" title="Numeric character reference">numeric character reference</a>). </p> <div class="mw-heading mw-heading4"><h4 id="Dual_quoting_delimiters">Dual quoting delimiters</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=10" title="Edit section: Dual quoting delimiters"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>In contrast to escape sequences and escape characters, dual delimiters provide yet another way to avoid delimiter collision. Some languages, for example, allow the use of either a single quote (') or a double quote (") to specify a string literal. For example, in <a href="/wiki/Perl" title="Perl">Perl</a>: </p> <div class="mw-highlight mw-highlight-lang-perl mw-content-ltr" dir="ltr"><pre><span></span><span class="k">print</span><span class="w"> </span><span class="s">'Nancy said "Hello World!" to the crowd.'</span><span class="p">;</span> </pre></div> <p>produces the desired output without requiring escapes. This approach, however, only works when the string does not contain <i>both</i> types of quotation marks. </p> <div class="mw-heading mw-heading4"><h4 id="Padding_quoting_delimiters">Padding quoting delimiters</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=11" title="Edit section: Padding quoting delimiters"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>In contrast to escape sequences and escape characters, padding delimiters provide yet another way to avoid delimiter collision. <a href="/wiki/Visual_Basic" title="Visual Basic">Visual Basic</a>, for example, uses double quotes as delimiters. This is similar to escaping the delimiter. </p> <div class="mw-highlight mw-highlight-lang-basic mw-content-ltr" dir="ltr"><pre><span></span><span class="vg">print</span><span class="w"> </span><span class="s2">"Nancy said ""Hello World!"" to the crowd."</span> </pre></div> <p>produces the desired output without requiring escapes. Like regular escaping it can, however, become confusing when many quotes are used. The code to print the above source code would look more confusing: </p> <div class="mw-highlight mw-highlight-lang-basic mw-content-ltr" dir="ltr"><pre><span></span><span class="vg">print</span><span class="w"> </span><span class="s2">"print ""Nancy said """"Hello World!"""" to the crowd."""</span> </pre></div> <div class="mw-heading mw-heading4"><h4 id="Configurable_alternative_quoting_delimiters">Configurable alternative quoting delimiters</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=12" title="Edit section: Configurable alternative quoting delimiters"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>In contrast to dual delimiters, multiple delimiters are even more flexible for avoiding delimiter collision.<sup id="cite_ref-programmingperl_7-1" class="reference"><a href="#cite_note-programmingperl-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup><sup class="reference nowrap"><span title="Page / location: 63">: 63 </span></sup> </p><p>For example, in <a href="/wiki/Perl" title="Perl">Perl</a>: </p> <div class="mw-highlight mw-highlight-lang-perl mw-content-ltr" dir="ltr"><pre><span></span><span class="k">print</span><span class="w"> </span><span class="sx">qq^Nancy doesn't want to say "Hello World!" anymore.^</span><span class="p">;</span> <span class="k">print</span><span class="w"> </span><span class="sx">qq@Nancy doesn't want to say "Hello World!" anymore.@</span><span class="p">;</span> <span class="k">print</span><span class="w"> </span><span class="sx">qq(Nancy doesn't want to say "Hello World!" anymore.)</span><span class="p">;</span> </pre></div> <p>all produce the desired output through use of <a rel="nofollow" class="external text" href="http://perldoc.perl.org/perlop.html#Quote-and-Quote-like-Operators">quote operators</a>, which allow any convenient character to act as a delimiter. Although this method is more flexible, few languages support it. Perl and <a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a> are two that do.<sup id="cite_ref-programmingperl_7-2" class="reference"><a href="#cite_note-programmingperl-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup><sup class="reference nowrap"><span title="Page / location: 62">: 62 </span></sup><sup id="cite_ref-Ruby000_21-0" class="reference"><a href="#cite_note-Ruby000-21"><span class="cite-bracket">[</span>21<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading4"><h4 id="Content_boundary">Content boundary</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=13" title="Edit section: Content boundary"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>A <b>content boundary</b> is a special type of delimiter that is specifically designed to resist delimiter collision. It works by allowing the author to specify a sequence of characters that is guaranteed to always indicate a boundary between parts in a multi-part message, with no other possible interpretation.<sup id="cite_ref-Mime000_22-0" class="reference"><a href="#cite_note-Mime000-22"><span class="cite-bracket">[</span>22<span class="cite-bracket">]</span></a></sup> </p><p>The delimiter is frequently generated from a random sequence of characters that is statistically improbable to occur in the content. This may be followed by an identifying mark such as a <a href="/wiki/UUID" class="mw-redirect" title="UUID">UUID</a>, a <a href="/wiki/Timestamp" title="Timestamp">timestamp</a>, or some other distinguishing mark. Alternatively, the content may be scanned to guarantee that a delimiter does not appear in the text. This may allow the delimiter to be shorter or simpler, and increase the human readability of the document. (<i>See e.g.</i>, <a href="/wiki/MIME#Multipart_messages" title="MIME">MIME</a>, <a href="/wiki/Here_document" title="Here document">Here documents</a>). </p> <div class="mw-heading mw-heading4"><h4 id="Whitespace_or_indentation">Whitespace or indentation</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=14" title="Edit section: Whitespace or indentation"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Some programming and computer languages allow the use of <a href="/wiki/String_literal#Whitespace_delimiters" title="String literal">whitespace delimiters</a> or <a href="/wiki/Indent_style" class="mw-redirect" title="Indent style">indentation</a> as a means of specifying boundaries between independent regions in text.<sup id="cite_ref-id_1268444524465_10_23-0" class="reference"><a href="#cite_note-id_1268444524465_10-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading4"><h4 id="Regular_expression_syntax">Regular expression syntax</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=15" title="Edit section: Regular expression syntax"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">See also: <a href="/wiki/Regular_expression_examples" class="mw-redirect" title="Regular expression examples">Regular expression examples</a></div> <p>In specifying a <a href="/wiki/Regular_expression" title="Regular expression">regular expression</a>, alternate delimiters may also be used to simplify the syntax for <b>match</b> and <b>substitution</b> operations in <a href="/wiki/Perl" title="Perl">Perl</a>.<sup id="cite_ref-Friedl000_24-0" class="reference"><a href="#cite_note-Friedl000-24"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup> </p><p>For example, a simple match operation may be specified in Perl with the following syntax: </p> <div class="mw-highlight mw-highlight-lang-perl mw-content-ltr" dir="ltr"><pre><span></span><span class="nv">$string1</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">'Nancy said "Hello World!" to the crowd.'</span><span class="p">;</span><span class="w"> </span><span class="c1"># specify a target string</span> <span class="k">print</span><span class="w"> </span><span class="nv">$string1</span><span class="w"> </span><span class="o">=~</span><span class="w"> </span><span class="sr">m/[aeiou]+/</span><span class="p">;</span><span class="w"> </span><span class="c1"># match one or more vowels</span> </pre></div> <p>The syntax is flexible enough to specify match operations with alternate delimiters, making it easy to avoid delimiter collision: </p> <div class="mw-highlight mw-highlight-lang-perl mw-content-ltr" dir="ltr"><pre><span></span><span class="nv">$string1</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">'Nancy said "http://Hello/World.htm" is not a valid address.'</span><span class="p">;</span><span class="w"> </span><span class="c1"># target string</span> <span class="w"> </span> <span class="k">print</span><span class="w"> </span><span class="nv">$string1</span><span class="w"> </span><span class="o">=~</span><span class="w"> </span><span class="sr">m@http://@</span><span class="p">;</span><span class="w"> </span><span class="c1"># match using alternate regular expression delimiter</span> <span class="k">print</span><span class="w"> </span><span class="nv">$string1</span><span class="w"> </span><span class="o">=~</span><span class="w"> </span><span class="sr">m{http://}</span><span class="p">;</span><span class="w"> </span><span class="c1"># same as previous, but different delimiter</span> <span class="k">print</span><span class="w"> </span><span class="nv">$string1</span><span class="w"> </span><span class="o">=~</span><span class="w"> </span><span class="sr">m!http://!</span><span class="p">;</span><span class="w"> </span><span class="c1"># same as previous, but different delimiter.</span> </pre></div> <div class="mw-heading mw-heading4"><h4 id="Here_document">Here document</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=16" title="Edit section: Here document"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>A <a href="/wiki/Here_document" title="Here document">Here document</a> allows the inclusion of arbitrary content by describing a special end sequence. Many languages support this including <a href="/wiki/PHP" title="PHP">PHP</a>, <a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">bash scripts</a>, <a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">ruby</a> and <a href="/wiki/Perl" title="Perl">perl</a>. A here document starts by describing what the end sequence will be and continues until that sequence is seen at the start of a new line.<sup id="cite_ref-25" class="reference"><a href="#cite_note-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup> </p><p>Here is an example in perl: </p> <div class="mw-highlight mw-highlight-lang-perl mw-content-ltr" dir="ltr"><pre><span></span><span class="k">print</span><span class="w"> </span><span class="s"><<</span><span class="dl">ENDOFHEREDOC</span><span class="s">;</span> <span class="s">It's very hard to encode a string with "certain characters".</span> <span class="s">Newlines, commas, and other characters can cause delimiter collisions.</span> <span class="dl">ENDOFHEREDOC</span> </pre></div> <p>This code would print: </p> <pre>It's very hard to encode a string with "certain characters". Newlines, commas, and other characters can cause delimiter collisions. </pre> <p>By using a special end sequence all manner of characters are allowed in the string. </p> <div class="mw-heading mw-heading4"><h4 id="ASCII_armor">ASCII armor</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=17" title="Edit section: ASCII armor"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Although principally used as a mechanism for text encoding of binary data, <a href="/wiki/ASCII_armoring" class="mw-redirect" title="ASCII armoring">ASCII armoring</a> is a programming and systems administration technique that also helps to avoid delimiter collision in some circumstances.<sup id="cite_ref-Rhee000_26-0" class="reference"><a href="#cite_note-Rhee000-26"><span class="cite-bracket">[</span>26<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-Gross000_27-0" class="reference"><a href="#cite_note-Gross000-27"><span class="cite-bracket">[</span>27<span class="cite-bracket">]</span></a></sup> This technique is contrasted from the other approaches described above because it is more complicated, and therefore not suitable for small applications and simple data storage formats. The technique employs a special encoding scheme, such as <a href="/wiki/Base64" title="Base64">base64</a>, to ensure that delimiter or other significant characters do not appear in transmitted data. The purpose is to prevent multilayered <a href="/wiki/Escape_character" title="Escape character">escaping</a>, i.e. for <a href="/wiki/Quoting_escape" class="mw-redirect" title="Quoting escape">doublequotes</a>. </p><p>This technique is used, for example, in <a href="/wiki/Microsoft" title="Microsoft">Microsoft</a>'s <a href="/wiki/ASP.NET" title="ASP.NET">ASP.NET</a> web development technology, and is closely associated with the "VIEWSTATE" component of that system.<sup id="cite_ref-Kalani000_28-0" class="reference"><a href="#cite_note-Kalani000-28"><span class="cite-bracket">[</span>28<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading5"><h5 id="Example">Example</h5><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=18" title="Edit section: Example"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The following simplified example demonstrates how this technique works in practice. </p><p>The first code fragment shows a simple <a href="/wiki/HTML_tag" class="mw-redirect" title="HTML tag">HTML tag</a> in which the VIEWSTATE value contains characters that are incompatible with the delimiters of the HTML tag itself: </p> <div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr"><pre><span></span><span class="nt"><input</span><span class="w"> </span><span class="na">type=</span><span class="s">"hidden"</span><span class="w"> </span><span class="na">name=</span><span class="s">"__VIEWSTATE"</span><span class="w"> </span><span class="na">value=</span><span class="s">"BookTitle:Nancy doesn't say "</span><span class="err">Hello</span><span class="w"> </span><span class="err">World!"</span><span class="w"> </span><span class="err">anymore."</span><span class="w"> </span><span class="nt">/></span> </pre></div> <p>This first code fragment is not <a href="/wiki/Well-formed_element" title="Well-formed element">well-formed</a>, and would therefore not work properly in a "real world" deployed system. </p><p>To store arbitrary text in an HTML attribute, <a href="/wiki/List_of_XML_and_HTML_character_entity_references" title="List of XML and HTML character entity references">HTML entities</a> can be used. In this case "&quot;" stands in for the double-quote: </p> <div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr"><pre><span></span><span class="nt"><input</span><span class="w"> </span><span class="na">type=</span><span class="s">"hidden"</span><span class="w"> </span><span class="na">name=</span><span class="s">"__VIEWSTATE"</span><span class="w"> </span><span class="na">value=</span><span class="s">"BookTitle:Nancy doesn't say &quot;Hello World!&quot; anymore."</span><span class="w"> </span><span class="nt">/></span> </pre></div> <p>Alternatively, any encoding could be used that doesn't include characters that have special meaning in the context, such as base64: </p> <div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr"><pre><span></span><span class="nt"><input</span><span class="w"> </span><span class="na">type=</span><span class="s">"hidden"</span><span class="w"> </span><span class="na">name=</span><span class="s">"__VIEWSTATE"</span><span class="w"> </span><span class="na">value=</span><span class="s">"Qm9va1RpdGxlOk5hbmN5IGRvZXNuJ3Qgc2F5ICJIZWxsbyBXb3JsZCEiIGFueW1vcmUu"</span><span class="w"> </span><span class="nt">/></span> </pre></div> <p>Or <a href="/wiki/Percent-encoding" title="Percent-encoding">percent-encoding</a>: </p> <div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr"><pre><span></span><span class="nt"><input</span><span class="w"> </span><span class="na">type=</span><span class="s">"hidden"</span><span class="w"> </span><span class="na">name=</span><span class="s">"__VIEWSTATE"</span><span class="w"> </span><span class="na">value=</span><span class="s">"BookTitle:Nancy%20doesn%27t%20say%20%22Hello%20World!%22%20anymore."</span><span class="w"> </span><span class="nt">/></span> </pre></div> <p>This prevents delimiter collision and ensures that incompatible characters will not appear inside the HTML code, regardless of what characters appear in the original (decoded) text.<sup id="cite_ref-Kalani000_28-1" class="reference"><a href="#cite_note-Kalani000-28"><span class="cite-bracket">[</span>28<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=19" title="Edit section: See also"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/CDATA" title="CDATA">CDATA</a></li> <li><a href="/wiki/Decimal_separator" title="Decimal separator">Decimal separator</a></li> <li><a href="/wiki/Delimiter-separated_values" title="Delimiter-separated values">Delimiter-separated values</a></li> <li><a href="/wiki/Escape_sequence" title="Escape sequence">Escape sequence</a></li> <li><a href="/wiki/String_literal" title="String literal">String literal</a></li> <li><a href="/wiki/Tab-separated_values" title="Tab-separated values">Tab-separated values</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="References">References</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=20" title="Edit section: References"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1239543626">.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style><div class="reflist"> <div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.its.bldrdoc.gov/fs-1037/dir-011/_1544.htm">"Definition: delimiter"</a>. <i>Federal Standard 1037C - Telecommunications: Glossary of Telecommunication Terms</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20130305032313/https://www.its.bldrdoc.gov/fs-1037/dir-011/_1544.htm">Archived</a> from the original on 2013-03-05<span class="reference-accessdate">. Retrieved <span class="nowrap">2019-11-25</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=Federal+Standard+1037C+-+Telecommunications%3A+Glossary+of+Telecommunication+Terms&rft.atitle=Definition%3A+delimiter&rft_id=https%3A%2F%2Fwww.its.bldrdoc.gov%2Ffs-1037%2Fdir-011%2F_1544.htm&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span></span> </li> <li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.computerhope.com/jargon/d/delimite.htm">"What is a Delimiter?"</a>. <i>www.computerhope.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2020-08-09</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=www.computerhope.com&rft.atitle=What+is+a+Delimiter%3F&rft_id=https%3A%2F%2Fwww.computerhope.com%2Fjargon%2Fd%2Fdelimite.htm&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span></span> </li> <li id="cite_note-hollerity-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-hollerity_3-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFRohl1973" class="citation book cs1">Rohl, Jeffrey S. (1973). <i>Programming in Fortran</i>. Oxford Oxfordshire: Oxford University Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-0-7190-0555-8" title="Special:BookSources/978-0-7190-0555-8"><bdi>978-0-7190-0555-8</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Programming+in+Fortran&rft.place=Oxford+Oxfordshire&rft.pub=Oxford+University+Press&rft.date=1973&rft.isbn=978-0-7190-0555-8&rft.aulast=Rohl&rft.aufirst=Jeffrey+S.&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> describing the method in Hollerith notation under the Fortran programming language.</span> </li> <li id="cite_note-FldDelm-4"><span class="mw-cite-backlink">^ <a href="#cite_ref-FldDelm_4-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FldDelm_4-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFde_Moor1993" class="citation book cs1">de Moor, Georges J. (1993). <i>Progress in Standardization in Health Care Informatics</i>. IOS Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/90-5199-114-2" title="Special:BookSources/90-5199-114-2"><bdi>90-5199-114-2</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Progress+in+Standardization+in+Health+Care+Informatics&rft.pub=IOS+Press&rft.date=1993&rft.isbn=90-5199-114-2&rft.aulast=de+Moor&rft.aufirst=Georges+J.&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> p. 141</span> </li> <li id="cite_note-BalaDelm-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-BalaDelm_5-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFFriedl2002" class="citation book cs1">Friedl, Jeffrey E. F. (2002). <i>Mastering Regular Expressions: Powerful Techniques for Perl and Other Tools</i>. O'Reilly. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/0-596-00289-0" title="Special:BookSources/0-596-00289-0"><bdi>0-596-00289-0</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Mastering+Regular+Expressions%3A+Powerful+Techniques+for+Perl+and+Other+Tools&rft.pub=O%27Reilly&rft.date=2002&rft.isbn=0-596-00289-0&rft.aulast=Friedl&rft.aufirst=Jeffrey+E.+F.&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> p. 319</span> </li> <li id="cite_note-Scott000-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-Scott000_6-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFScott1999" class="citation book cs1">Scott, Michael Lee (1999). <i>Programming Language Pragmatics</i>. Morgan Kaufmann. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/1-55860-442-1" title="Special:BookSources/1-55860-442-1"><bdi>1-55860-442-1</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Programming+Language+Pragmatics&rft.pub=Morgan+Kaufmann&rft.date=1999&rft.isbn=1-55860-442-1&rft.aulast=Scott&rft.aufirst=Michael+Lee&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span></span> </li> <li id="cite_note-programmingperl-7"><span class="mw-cite-backlink">^ <a href="#cite_ref-programmingperl_7-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-programmingperl_7-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-programmingperl_7-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFWallOrwant2000" class="citation book cs1"><a href="/wiki/Larry_Wall" title="Larry Wall">Wall, Larry</a>; Orwant, Jon (July 2000). <i>Programming Perl</i> (Third ed.). O'Reilly. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/0-596-00027-8" title="Special:BookSources/0-596-00027-8"><bdi>0-596-00027-8</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Programming+Perl&rft.edition=Third&rft.pub=O%27Reilly&rft.date=2000-07&rft.isbn=0-596-00027-8&rft.aulast=Wall&rft.aufirst=Larry&rft.au=Orwant%2C+Jon&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span></span> </li> <li id="cite_note-Kaufmann000-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-Kaufmann000_8-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFKaufmann2000" class="citation book cs1">Kaufmann, Matt (2000). <i>Computer-Aided Reasoning: An Approach</i>. Springer. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/0-7923-7744-3" title="Special:BookSources/0-7923-7744-3"><bdi>0-7923-7744-3</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Computer-Aided+Reasoning%3A+An+Approach&rft.pub=Springer&rft.date=2000&rft.isbn=0-7923-7744-3&rft.aulast=Kaufmann&rft.aufirst=Matt&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span>p. 3</span> </li> <li id="cite_note-curly_brace_cstyle-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-curly_brace_cstyle_9-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFMeyer2005" class="citation book cs1">Meyer, Mark (2005). <i>Explorations in Computer Science</i>. Oxford Oxfordshire: Oxford University Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-0-7637-3832-7" title="Special:BookSources/978-0-7637-3832-7"><bdi>978-0-7637-3832-7</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Explorations+in+Computer+Science&rft.place=Oxford+Oxfordshire&rft.pub=Oxford+University+Press&rft.date=2005&rft.isbn=978-0-7637-3832-7&rft.aulast=Meyer&rft.aufirst=Mark&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> references C-style programming languages prominently featuring curly brackets and semicolons.</span> </li> <li id="cite_note-id_1268443793898_27-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-id_1268443793898_27_10-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFDilligan1998" class="citation book cs1">Dilligan, Robert (1998). <i>Computing in the Web Age</i>. Oxford Oxfordshire: Oxford University Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-0-306-45972-6" title="Special:BookSources/978-0-306-45972-6"><bdi>978-0-306-45972-6</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Computing+in+the+Web+Age&rft.place=Oxford+Oxfordshire&rft.pub=Oxford+University+Press&rft.date=1998&rft.isbn=978-0-306-45972-6&rft.aulast=Dilligan&rft.aufirst=Robert&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span>Describes syntax and delimiters used in HTML.</span> </li> <li id="cite_note-id_1268443910269_75-11"><span class="mw-cite-backlink">^ <a href="#cite_ref-id_1268443910269_75_11-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-id_1268443910269_75_11-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFSchwartz2005" class="citation book cs1"><a href="/wiki/Randal_Schwartz" class="mw-redirect" title="Randal Schwartz">Schwartz, Randal</a> (2005). <a rel="nofollow" class="external text" href="https://archive.org/details/isbn_9780596101053"><i>Learning Perl</i></a>. Oxford Oxfordshire: Oxford University Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-0-596-10105-3" title="Special:BookSources/978-0-596-10105-3"><bdi>978-0-596-10105-3</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Learning+Perl&rft.place=Oxford+Oxfordshire&rft.pub=Oxford+University+Press&rft.date=2005&rft.isbn=978-0-596-10105-3&rft.aulast=Schwartz&rft.aufirst=Randal&rft_id=https%3A%2F%2Farchive.org%2Fdetails%2Fisbn_9780596101053&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span>Describes <a href="/wiki/String_literal" title="String literal">string literals</a>.</span> </li> <li id="cite_note-id_1268443998814_32-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-id_1268443998814_32_12-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFWatt2003" class="citation book cs1">Watt, Andrew (2003). <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/samsteachyoursel0000watt"><i>Sams Teach Yourself Xml in 10 Minutes</i></a></span>. Oxford Oxfordshire: Oxford University Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-0-672-32471-0" title="Special:BookSources/978-0-672-32471-0"><bdi>978-0-672-32471-0</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Sams+Teach+Yourself+Xml+in+10+Minutes&rft.place=Oxford+Oxfordshire&rft.pub=Oxford+University+Press&rft.date=2003&rft.isbn=978-0-672-32471-0&rft.aulast=Watt&rft.aufirst=Andrew&rft_id=https%3A%2F%2Farchive.org%2Fdetails%2Fsamsteachyoursel0000watt&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> Describes XML processing instruction. p. 21.</span> </li> <li id="cite_note-id_1268444112328_77-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-id_1268444112328_77_13-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFCabrera2002" class="citation book cs1">Cabrera, Harold (2002). <i>C# for Java Programmers</i>. Oxford Oxfordshire: Oxford University Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-1-931836-54-8" title="Special:BookSources/978-1-931836-54-8"><bdi>978-1-931836-54-8</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=C%23+for+Java+Programmers&rft.place=Oxford+Oxfordshire&rft.pub=Oxford+University+Press&rft.date=2002&rft.isbn=978-1-931836-54-8&rft.aulast=Cabrera&rft.aufirst=Harold&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> Describes single-line and multi-line comments. p. 72.</span> </li> <li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/jakartaee/pages/blob/master/spec/src/main/asciidoc/ServerPages.adoc#jakarta-server-pages-specification-version-40">"Jakarta Server Pages Specification, Version 4.0akarta Server Pages Specification, Version 4.0"</a>. <i><a href="/wiki/GitHub" title="GitHub">GitHub</a></i><span class="reference-accessdate">. Retrieved <span class="nowrap">2023-02-10</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=GitHub&rft.atitle=Jakarta+Server+Pages+Specification%2C+Version+4.0akarta+Server+Pages+Specification%2C+Version+4.0&rft_id=https%3A%2F%2Fgithub.com%2Fjakartaee%2Fpages%2Fblob%2Fmaster%2Fspec%2Fsrc%2Fmain%2Fasciidoc%2FServerPages.adoc%23jakarta-server-pages-specification-version-40&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span></span> </li> <li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFISO-IR-11975" class="citation cs1"><a href="/wiki/ISO/IEC_JTC_1/SC_2#History" title="ISO/IEC JTC 1/SC 2">ISO/TC 97/SC 2</a> (December 1, 1975). <a rel="nofollow" class="external text" href="https://itscj.ipsj.or.jp/ir/001.pdf"><i>The set of control characters for ISO 646</i></a> <span class="cs1-format">(PDF)</span>. ITSCJ/<a href="/wiki/Information_Processing_Society_of_Japan" title="Information Processing Society of Japan">IPSJ</a>. <a href="/wiki/ISO-IR" class="mw-redirect" title="ISO-IR">ISO-IR</a>-1.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=The+set+of+control+characters+for+ISO+646&rft.pub=ITSCJ%2FIPSJ&rft.date=1975-12-01&rft.au=ISO%2FTC+97%2FSC+2&rft_id=https%3A%2F%2Fitscj.ipsj.or.jp%2Fir%2F001.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span><span class="cs1-maint citation-comment"><code class="cs1-code">{{<a href="/wiki/Template:Citation" title="Template:Citation">citation</a>}}</code>: CS1 maint: numeric names: authors list (<a href="/wiki/Category:CS1_maint:_numeric_names:_authors_list" title="Category:CS1 maint: numeric names: authors list">link</a>)</span></span> </li> <li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFISO-IR-61975" class="citation cs1"><a href="/wiki/American_National_Standards_Institute" title="American National Standards Institute">American National Standards Institute</a> (December 1, 1975). <a rel="nofollow" class="external text" href="https://itscj.ipsj.or.jp/ir/006.pdf"><i>ASCII graphic character set</i></a> <span class="cs1-format">(PDF)</span>. ITSCJ/<a href="/wiki/Information_Processing_Society_of_Japan" title="Information Processing Society of Japan">IPSJ</a>. <a href="/wiki/ISO-IR" class="mw-redirect" title="ISO-IR">ISO-IR</a>-6.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=ASCII+graphic+character+set&rft.pub=ITSCJ%2FIPSJ&rft.date=1975-12-01&rft.au=American+National+Standards+Institute&rft_id=https%3A%2F%2Fitscj.ipsj.or.jp%2Fir%2F006.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span></span> </li> <li id="cite_note-id_1268444696385_5-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-id_1268444696385_5_17-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFLewine1991" class="citation book cs1">Lewine, Donald (1991). <a rel="nofollow" class="external text" href="https://archive.org/details/posixprogrammers00lewi"><i>Posix Programmer's Guide</i></a>. Oxford Oxfordshire: Oxford University Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-0-937175-73-6" title="Special:BookSources/978-0-937175-73-6"><bdi>978-0-937175-73-6</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Posix+Programmer%27s+Guide&rft.place=Oxford+Oxfordshire&rft.pub=Oxford+University+Press&rft.date=1991&rft.isbn=978-0-937175-73-6&rft.aulast=Lewine&rft.aufirst=Donald&rft_id=https%3A%2F%2Farchive.org%2Fdetails%2Fposixprogrammers00lewi&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> Describes use of control-z. p. 156,</span> </li> <li id="cite_note-mre_embed_problem-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-mre_embed_problem_18-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFFriedl2006" class="citation book cs1">Friedl, Jeffrey (2006). <i>Mastering Regular Expressions</i>. Oxford Oxfordshire: Oxford University Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-0-596-52812-6" title="Special:BookSources/978-0-596-52812-6"><bdi>978-0-596-52812-6</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Mastering+Regular+Expressions&rft.place=Oxford+Oxfordshire&rft.pub=Oxford+University+Press&rft.date=2006&rft.isbn=978-0-596-52812-6&rft.aulast=Friedl&rft.aufirst=Jeffrey&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> describing solutions for embedded-delimiter problems p. 472.</span> </li> <li id="cite_note-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-19">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://ronaldduncan.wordpress.com/2009/10/31/text-file-formats-ascii-delimited-text-not-csv-or-tab-delimited-text/">Discussion on ASCII Delimited Text vs CSV and Tab Delimited</a></span> </li> <li id="cite_note-Kahrel000-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-Kahrel000_20-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFKahrel2006" class="citation book cs1">Kahrel, Peter (2006). <i>Automating InDesign with Regular Expressions</i>. O'Reilly. p. 11. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/0-596-52937-6" title="Special:BookSources/0-596-52937-6"><bdi>0-596-52937-6</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Automating+InDesign+with+Regular+Expressions&rft.pages=11&rft.pub=O%27Reilly&rft.date=2006&rft.isbn=0-596-52937-6&rft.aulast=Kahrel&rft.aufirst=Peter&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span></span> </li> <li id="cite_note-Ruby000-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-Ruby000_21-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFYukihiro2001" class="citation book cs1">Yukihiro, Matsumoto (2001). <a rel="nofollow" class="external text" href="https://archive.org/details/rubyinnutshellde00mats"><i>Ruby in a Nutshell</i></a>. O'Reilly. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/0-596-00214-9" title="Special:BookSources/0-596-00214-9"><bdi>0-596-00214-9</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Ruby+in+a+Nutshell&rft.pub=O%27Reilly&rft.date=2001&rft.isbn=0-596-00214-9&rft.aulast=Yukihiro&rft.aufirst=Matsumoto&rft_id=https%3A%2F%2Farchive.org%2Fdetails%2Frubyinnutshellde00mats&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> In Ruby, these are indicated as <i>general delimited strings</i>. p. 11</span> </li> <li id="cite_note-Mime000-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-Mime000_22-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation book cs1"><i>Network Protocols Handbook</i>. Javvin Technologies Inc. 2005. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/0-9740945-2-8" title="Special:BookSources/0-9740945-2-8"><bdi>0-9740945-2-8</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Network+Protocols+Handbook&rft.pub=Javvin+Technologies+Inc.&rft.date=2005&rft.isbn=0-9740945-2-8&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> p. 26</span> </li> <li id="cite_note-id_1268444524465_10-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-id_1268444524465_10_23-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation book cs1"><i>Computational Linguistics and Intelligent Text Processing</i>. Oxford Oxfordshire: Oxford University Press. 2001. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-3-540-41687-6" title="Special:BookSources/978-3-540-41687-6"><bdi>978-3-540-41687-6</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Computational+Linguistics+and+Intelligent+Text+Processing&rft.place=Oxford+Oxfordshire&rft.pub=Oxford+University+Press&rft.date=2001&rft.isbn=978-3-540-41687-6&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> Describes whitespace delimiters. p. 258.</span> </li> <li id="cite_note-Friedl000-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-Friedl000_24-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFFriedl2006" class="citation book cs1">Friedl, Jeffrey (2006). <i>Mastering Regular Expressions</i>. Oxford Oxfordshire: Oxford University Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-0-596-52812-6" title="Special:BookSources/978-0-596-52812-6"><bdi>978-0-596-52812-6</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Mastering+Regular+Expressions&rft.place=Oxford+Oxfordshire&rft.pub=Oxford+University+Press&rft.date=2006&rft.isbn=978-0-596-52812-6&rft.aulast=Friedl&rft.aufirst=Jeffrey&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span> page 472.</span> </li> <li id="cite_note-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-25">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://perldoc.perl.org/perlop.html">Perl operators and precedence</a></span> </li> <li id="cite_note-Rhee000-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-Rhee000_26-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFRhee2003" class="citation book cs1">Rhee, Man (2003). <i>Internet Security: Cryptographic Principles, Algorithms and Protocols</i>. John Wiley and Sons. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/0-470-85285-2" title="Special:BookSources/0-470-85285-2"><bdi>0-470-85285-2</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Internet+Security%3A+Cryptographic+Principles%2C+Algorithms+and+Protocols&rft.pub=John+Wiley+and+Sons&rft.date=2003&rft.isbn=0-470-85285-2&rft.aulast=Rhee&rft.aufirst=Man&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span>(an example usage of ASCII armoring in encryption applications)</span> </li> <li id="cite_note-Gross000-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-Gross000_27-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFGross2005" class="citation book cs1">Gross, Christian (2005). <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/opensourceforwin0000gros"><i>Open Source for Windows Administrators</i></a></span>. Charles River Media. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/1-58450-347-5" title="Special:BookSources/1-58450-347-5"><bdi>1-58450-347-5</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Open+Source+for+Windows+Administrators&rft.pub=Charles+River+Media&rft.date=2005&rft.isbn=1-58450-347-5&rft.aulast=Gross&rft.aufirst=Christian&rft_id=https%3A%2F%2Farchive.org%2Fdetails%2Fopensourceforwin0000gros&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span>(an example usage of ASCII armoring in encryption applications)</span> </li> <li id="cite_note-Kalani000-28"><span class="mw-cite-backlink">^ <a href="#cite_ref-Kalani000_28-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Kalani000_28-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFKalani2004" class="citation book cs1">Kalani, Amit (2004). <i>Developing and Implementing Web Applications with Visual C# . NET and Visual Studio . NET</i>. Que. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/0-7897-2901-6" title="Special:BookSources/0-7897-2901-6"><bdi>0-7897-2901-6</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Developing+and+Implementing+Web+Applications+with+Visual+C%23+.+NET+and+Visual+Studio+.+NET&rft.pub=Que&rft.date=2004&rft.isbn=0-7897-2901-6&rft.aulast=Kalani&rft.aufirst=Amit&rfr_id=info%3Asid%2Fen.wikipedia.org%3ADelimiter" class="Z3988"></span>(describes the use of Base64 encoding and VIEWSTATE inside HTML source code)</span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Delimiter&action=edit&section=21" title="Edit section: External links"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a rel="nofollow" class="external text" href="http://www.catb.org/esr/writings/taoup/html/ch05s02.html">Data File Metaformats</a> from <a href="/wiki/The_Art_of_Unix_Programming" title="The Art of Unix Programming">The Art of Unix Programming</a> by <a href="/wiki/Eric_Steven_Raymond" class="mw-redirect" title="Eric Steven Raymond">Eric Steven Raymond</a></li></ul> <!-- NewPP limit report Parsed by mw‐api‐ext.eqiad.main‐6696b4cc84‐4244t Cached time: 20241122140730 Cache expiry: 2592000 Reduced expiry: false Complications: [vary‐revision‐sha1, show‐toc] CPU time usage: 0.400 seconds Real time usage: 1.704 seconds Preprocessor visited node count: 2751/1000000 Post‐expand include size: 45989/2097152 bytes Template argument size: 2449/2097152 bytes Highest expansion depth: 16/100 Expensive parser function count: 17/500 Unstrip recursion depth: 1/20 Unstrip post‐expand size: 99228/5000000 bytes Lua time usage: 0.199/10.000 seconds Lua memory usage: 6969734/52428800 bytes Number of Wikibase entities loaded: 0/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 1554.157 1 -total 16.21% 251.872 1 Template:Reflist 7.44% 115.681 3 Template:Cite_web 5.23% 81.326 21 Template:Cite_book 4.87% 75.756 1 Template:Short_description 2.63% 40.820 2 Template:Pagetype 2.50% 38.881 2 Template:Citation_needed 2.12% 32.953 2 Template:Fix 1.87% 29.135 2 Template:Rp 1.70% 26.447 2 Template:Cite_iso-ir --> <!-- Saved in parser cache with key enwiki:pcache:idhash:564276-0!canonical and timestamp 20241122140730 and revision id 1215698820. Rendering was triggered because: unknown --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://en.wikipedia.org/w/index.php?title=Delimiter&oldid=1215698820">https://en.wikipedia.org/w/index.php?title=Delimiter&oldid=1215698820</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Help:Category" title="Help:Category">Categories</a>: <ul><li><a href="/wiki/Category:Markup_languages" title="Category:Markup languages">Markup languages</a></li><li><a href="/wiki/Category:Pattern_matching" title="Category:Pattern matching">Pattern matching</a></li><li><a href="/wiki/Category:Programming_constructs" title="Category:Programming constructs">Programming constructs</a></li><li><a href="/wiki/Category:String_(computer_science)" title="Category:String (computer science)">String (computer science)</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">Hidden categories: <ul><li><a href="/wiki/Category:CS1_maint:_numeric_names:_authors_list" title="Category:CS1 maint: numeric names: authors list">CS1 maint: numeric names: authors list</a></li><li><a href="/wiki/Category:Articles_with_short_description" title="Category:Articles with short description">Articles with short description</a></li><li><a href="/wiki/Category:Short_description_is_different_from_Wikidata" title="Category:Short description is different from Wikidata">Short description is different from Wikidata</a></li><li><a href="/wiki/Category:All_articles_with_unsourced_statements" title="Category:All articles with unsourced statements">All articles with unsourced statements</a></li><li><a href="/wiki/Category:Articles_with_unsourced_statements_from_February_2024" title="Category:Articles with unsourced statements from February 2024">Articles with unsourced statements from February 2024</a></li><li><a href="/wiki/Category:Articles_with_unsourced_statements_from_March_2014" title="Category:Articles with unsourced statements from March 2014">Articles with unsourced statements from March 2014</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> This page was last edited on 26 March 2024, at 16:50<span class="anonymous-show"> (UTC)</span>.</li> <li id="footer-info-copyright">Text is available under the <a href="/wiki/Wikipedia:Text_of_the_Creative_Commons_Attribution-ShareAlike_4.0_International_License" title="Wikipedia:Text of the Creative Commons Attribution-ShareAlike 4.0 International License">Creative Commons Attribution-ShareAlike 4.0 License</a>; additional terms may apply. By using this site, you agree to the <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use" class="extiw" title="foundation:Special:MyLanguage/Policy:Terms of Use">Terms of Use</a> and <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy" class="extiw" title="foundation:Special:MyLanguage/Policy:Privacy policy">Privacy Policy</a>. Wikipedia® is a registered trademark of the <a rel="nofollow" class="external text" href="https://wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:About">About Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:General_disclaimer">Disclaimers</a></li> <li id="footer-places-contact"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact Wikipedia</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Code of Conduct</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Developers</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/en.wikipedia.org">Statistics</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookie statement</a></li> <li id="footer-places-mobileview"><a href="//en.m.wikipedia.org/w/index.php?title=Delimiter&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobile view</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-f69cdc8f6-6xdtf","wgBackendResponseTime":158,"wgPageParseReport":{"limitreport":{"cputime":"0.400","walltime":"1.704","ppvisitednodes":{"value":2751,"limit":1000000},"postexpandincludesize":{"value":45989,"limit":2097152},"templateargumentsize":{"value":2449,"limit":2097152},"expansiondepth":{"value":16,"limit":100},"expensivefunctioncount":{"value":17,"limit":500},"unstrip-depth":{"value":1,"limit":20},"unstrip-size":{"value":99228,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 1554.157 1 -total"," 16.21% 251.872 1 Template:Reflist"," 7.44% 115.681 3 Template:Cite_web"," 5.23% 81.326 21 Template:Cite_book"," 4.87% 75.756 1 Template:Short_description"," 2.63% 40.820 2 Template:Pagetype"," 2.50% 38.881 2 Template:Citation_needed"," 2.12% 32.953 2 Template:Fix"," 1.87% 29.135 2 Template:Rp"," 1.70% 26.447 2 Template:Cite_iso-ir"]},"scribunto":{"limitreport-timeusage":{"value":"0.199","limit":"10.000"},"limitreport-memusage":{"value":6969734,"limit":52428800}},"cachereport":{"origin":"mw-api-ext.eqiad.main-6696b4cc84-4244t","timestamp":"20241122140730","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"Delimiter","url":"https:\/\/en.wikipedia.org\/wiki\/Delimiter","sameAs":"http:\/\/www.wikidata.org\/entity\/Q1641420","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q1641420","author":{"@type":"Organization","name":"Contributors to Wikimedia projects"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2004-03-30T12:07:31Z","dateModified":"2024-03-26T16:50:10Z","image":"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/7\/73\/Csv_delimited000.svg","headline":"sequence of one or more characters used to specify the boundary between separate, independent regions in plain text or other data streams; one of various means to specify boundaries in a data stream"}</script> </body> </html>