Regular Expressions 101

Save & Share

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8
  • .NET 7.0 (C#)
  • Rust
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests

Tools

Sponsors
An explanation of your regex will be automatically generated as you type.
Detailed match information will be displayed here automatically.
  • All Tokens
  • Common Tokens
  • General Tokens
  • Anchors
  • Meta Sequences
  • Quantifiers
  • Group Constructs
  • Character Classes
  • Flags/Modifiers
  • Substitution
  • A single character of: a, b or c
    [abc]
  • A character except: a, b or c
    [^abc]
  • A character in the range: a-z
    [a-z]
  • A character not in the range: a-z
    [^a-z]
  • A character in the range: a-z or A-Z
    [a-zA-Z]
  • Any single character
    .
  • Alternate - match either a or b
    a|b
  • Any whitespace character
    \s
  • Any non-whitespace character
    \S
  • Any digit
    \d
  • Any non-digit
    \D
  • Any word character
    \w
  • Any non-word character
    \W
  • Match everything enclosed
    (?:...)
  • Capture everything enclosed
    (...)
  • Zero or one of a
    a?
  • Zero or more of a
    a*
  • One or more of a
    a+
  • Exactly 3 of a
    a{3}
  • 3 or more of a
    a{3,}
  • Between 3 and 6 of a
    a{3,6}
  • Start of string
    ^
  • End of string
    $
  • A word boundary
    \b
  • Non-word boundary
    \B

Regular Expression

/
/
gmi

Test String

Code Generator

Generated Code

$re = '/1\.\s\[(.*?)(?s).+?(?=^$)/mi'; $str = 'New features are described below in detail. Behavior changes, resolved issues, deprecations, and removals are called out their own sections. 1. [User Interfaces](#user-interfaces) - [Sites Improvements](#sites-improvements) - [Reports in Sites](#reports-in-sites) - [Inline Task Management](#inline-task-management) - [User Record in Sites](#user-record-in-sites) - [User Profile in Sites](#user-profile-in-sites) - [Wider Sites](#wider-sites) - [Quick Apps Improvements](#quick-apps-improvements) - [Sites for Quick Apps](#sites-for-quick-apps) - [Task Reports for Quick Apps](#task-reports-for-quick-apps) - [Wider Task Interface](#wider-task-interface) - [Saving Task Changes in Embedded](#saving-task-changes-in-embedded) - [Hierarchy Tree Browser](#hierarchy-tree-browser) - [User Card for User Record Links](#user-card-for-user-record-links) - [Microsoft Edge Browser Support](#microsoft-edge-browser-support) 1. [Appian Designer](#appian-designer) - [Improved Data-Type Management for Process Models](#improved-datatype-management-for-process-models) - [Process Modeler Improvements (Preview Edition)](#process-modeler-improvements-preview-edition) - [Disable Email Notifications to Task Assignees](#disable-email-notifications-to-task-assignees) - [Multi-Select](#multiselect) - [Edge and Safari Browser Support](#edge-and-safari-browser-support) - [Window Resize](#window-resize) - [Application Builder Improvements](#application-builder-improvements) - [Sites for the Application Builder](#sites-for-the-application-builder) - [Task Reports for the Application Builder](#task-reports-for-the-application-builder) - [Smart Defaults](#smart-defaults) - [Context for Related Actions](#context-for-related-actions) - [Save-Interface-As Dialog](#saveinterfaceas-dialog) - [Save In Folder](#save-in-folder) - [Multiple Sort for a!queryEntity()](#multiple-sort-for-aqueryentity) - [Batch Testing Improvements](#batch-testing-improvements) - [New Data Types for Batch Testing of Expression Rules](#new-data-types-for-batch-testing-of-expression-rules) - [Application URL Available in Application Test Results](#application-url-available-in-application-test-results) - [List Lengths in Expression Rule Designer](#list-lengths-in-expression-rule-designer) - [Web API URLs in Designer](#web-api-urls-in-designer) - [Save as Default Test Values Link Always Shown](#save-as-default-test-values-link-always-shown) 1. [Appian Administrators](#appian-administrators) - [Import and Export of Administration Console Settings](#import-and-export-of-administration-console-settings) - [Import Customization](#import-customization) 1. [Server Administration](#server-administration) - [Process Execution Engine Throughput](#process-execution-engine-throughput) - [Expression Rule Test Cases Metrics Log](#expression-rule-test-cases-metrics-log) 1. [Appian Developer](#appian-developer) 1. [Appian Cloud](#appian-cloud) - [MySQL 5.7](#mysql-57) - [End of Support for TLS 1.0 in May of 2017](#end-of-support-for-tls-10-in-may-of-2017) 1. [Behavior Changes](#behavior-changes) 1. [Resolved Issues](#resolved-issues) - [Appian Designer](#appian-designer) - [Appian Administration Console](#appian-administration-console) - [Server Administration](#server-administration) - [Appian Developer](#appian-developer) - [Platform](#platform) 1. [Deprecations](#deprecations) - [Application Portal](#application-portal) - [Communication Smart Services](#communication-smart-services) - [Portal Management Smart Services](#portal-management-smart-services) - [Communities](#communities) - [Document Management Smart Services](#document-management-smart-services) - [Forum-related Data Types](#forumrelated-data-types) - [Attachments and Notes on Process Models](#attachments-and-notes-on-process-models) - [Deprecated System Groups](#deprecated-system-groups) - [Public Java APIs Deprecated](#public-java-apis-deprecated) - [Publishing Process Models as Web Services via UDDI](#publishing-process-models-as-web-services-via-uddi) - [TLS 1.0 on Appian Cloud](#tls-10-on-appian-cloud) - [Web.xml Modifications](#webxml-modifications) - [Multiple Gateways on Windows Environments](#multiple-gateways-on-windows-environments) 1. [Removals](#removals) - [Microsoft Internet Explorer 9 & 10](#microsoft-internet-explorer-9-10) - [Public Java APIs Removed](#public-java-apis-removed) - [Stacked Bar Chart](#stacked-bar-chart) ## User Interfaces ## This section describes new features for user interfaces, including Tempo, sites, and embedded interfaces. ### Sites Improvements ### With this version of Appian, we\'ve expanded the functionality of the increasingly popular [sites](Sites.md) feature. #### Reports in Sites #### In addition to *task reports*, *actions* and *record types*, designers can now [configure sites with reports](Sites.md#Configure_a_Site_Page), allowing them to put important data and analysis in front of the sites users who need it. <img class="screenshot" src="images/release_notes/SitesTempoReports.png"/> #### Inline Task Management #### More [task controls](Tasks.md#Working_with_Tasks_in_Tempo) are now available for tasks in sites, allowing sites users to save, reassign, or reject tasks. #### User Record in Sites #### We\'ve made it possible for designers to configure the *User record* and *User record* links in sites, to give sites users visibility to the other users. <img src="images/release_notes/SitesUserRecord.png"/> #### User Profile in Sites #### Users can now access and make updates to their profiles in sites. The user profile is available by clicking on the user avatar in the upper-right corner of the site. <img src="images/release_notes_16_3/userProfileSites.png" /> #### Wider Sites #### Following in Tempo\'s footsteps, sites are now 25% wider, giving designers more room to work with when creating interfaces. <img src="images/release_notes_16_3/Wider_Sites.png" /> ### Quick Apps Improvements ### We\'re contining to bring more of what users want to build with Quick Apps, and this release adds two essential Appian productivity features to the palette: [Sites](Sites.md) and [Task Reports](Task_Report_Tutorial.md). #### Sites for Quick Apps #### Users can now generate a [site](Sites.md) for any [Quick App](Quick_Apps_Designer.md). This allows users to focus on their work in a site dedicated to the Quick App. <img src="images/Quick_Apps/quickAppsSite.png" class="screenshot"/> Users will find a new checkbox when creating or updating a Quick App that allows them to generate a site for their application. While the Quick App will still be available in Tempo, users will now have the option of using their application in the new site. #### Task Reports for Quick Apps #### Quick Apps now include a default task report, which shows all tasks for a user. This report appears in the **Tasks** tab in Tempo and the **My Tasks** tab in sites (if there is one for the Quick App). <img height="95%" width="95%" align="middle" hspace="20" src="images/release_notes_16_3/quickAppsTaskReport.png"/> This task report will be added to existing Quick Apps the next time they\'re updated from the [Quick Apps Designer](Quick_Apps_Designer.md). ### Wider Task Interface ### The [task controls](Tasks.md#Working_with_Tasks_in_Tempo) that used to take up space in the left-hand panel (*save changes*, *reassign*, and *reject*), have been moved to a cleaner, easier-to-find, taskbar along the top of the task interface in Tempo, sites, and embedded. This frees up that space and gives designers more room to work in. <img height="95%" width="95%" align="middle" hspace="20" src="images/release_notes/inline-task-mngt.png" /> ### Saving Task Changes in Embedded ### Users of [embedded](Embedded_Interfaces.md) can now save changes to tasks, allowing them to step away from long forms and come back to them later. ### Hierarchy Tree Browser ### The [Heirarchy Tree Browser](somelink) is a new component(?) that allows users to navigate heirarchical business data in a visual tree structure. This provides the same functionality as the [organization chart](link), but for a custom data set. <img src="images/tree-browser-screenshot.png" class="screenshot"/> [new screenshot will feature some annotations about its use case] In the above screenshot, we\'ve created a browser for company ownership. LINK TO RECIPE. ### User Card for User Record Links ### Users will now see a user card when hovering on a [user record link](SAIL_Components.md#UserRecordLink) or a [record link](SAIL_Components.md#RecordLink) that navigates to a User record. This is supported for any component that can contain a link, such as the link, image, and rich text components. <img src="images/user-card-link-ss.png" class="screenshot"/> ### Microsoft Edge Browser Support ### Microsoft Edge is now supported for all user and most designer environments. See [Web Browsers](System_Requirements.html#Web_Browsers) for environments where Microsoft Edge is supported. ## Appian Designer ## This section describes new features in the Appian Designer environment. ### Improved Data-Type Management for Process Models ### When you [update a data type](Custom_Data_Types.md#Edit), references to that data type in process models are immediately updated to use the latest version without any additional steps. Because of this, you no longer need to include process models in your deployment patch when modifying the data types used by those process models. New process instances started from those models will use the new data type version. As was the case in previous releases, running processes will continue to use the version of the data type with which they started. <div class="tip">With the inclusion of process models in this release, all Appian design objects now benefit from improved data-type management.</div> ### Process Modeler Improvements (Preview Edition) ### The process modeler has been getting a lot of exciting changes, many of which are some of the most-requested features from our customers. Instead of making designers wait to try out the new process modeler, last quarter we released a functional [Preview Edition](Process_Modeler_Preview_Edition.html). While we\'re not quite ready to replace the existing process modeler with the new one, the Preview Edition remains available. <div class="note">If you want to use the old process modeler, simply open a process model with <b>Internet Explorer</b>. Opening a process model with <i>any other browser</i> will open it with the Preview Edition.</div> The following list of improvements apply only to the preview edition of the process modeler. #### Disable Email Notifications to Task Assignees #### You can now enable or disable email notifications when a task is assigned to users or groups. Email notifications are enabled by default, and can be configured from the [Assignment](Assignment_Tab.md) tab. <img src="images/release_notes/task_email_notifications.png" class="screenshot"/> #### Multi-Select #### You can now **Ctrl + Click** on nodes to select multiple nodes and annotations at the same time, and move them en-masse around your canvass. <img src="images/release_notes/process_modeler_multi_node_selection.gif" class="screenshot"/> #### Edge and Safari Browser Support #### In addition to Chrome and Firefox, the Preview Edition now supports Microsoft **Edge** and **Safari**. This allows designers to build process models in all [modern browsers](System_Requirements.md#Web_Browsers). #### Window Resize #### You can now resize the process modeler window. <img src="images/release_notes/process_modeler_resize_window.gif" class="screenshot"/> See [Process Modeler Preview Edition](Process_Modeler_Preview_Edition.md) for a complete list of improvements. ### Application Builder Improvements ### Last release, we introduced the application builder to help designers get a head start on creating new applications. This release we\'ve added two important productivity features to the builder: [Sites](Sites.md) and [Task Reports](Task_Report_Tutorial.md). #### Sites for the Application Builder #### You can now generate a [site](Sites.md) for any application you create with the [application builder](appbuilderlink). Users will find a new checkbox when creating an application that allows them to generate a site. While the application will still be available in Tempo, users will also have the option of using it in the new site. #### Task Reports for the Application Builder #### Each application created through the application builder now comes with a task report, which shows all tasks for a user within the application. This report appears in the **Tasks** tab in Tempo and the **My Tasks** tab in sites (if there is one). <img src="images/Quick_Apps/quickAppsTaskReport.png" class="screenshot"/> ### Smart Defaults ### /v/ We\'ve included some quality-of-life improvements for Appian designers that make building Appian applications a little faster and easier. /v/ We\'ve added some pre-population to common fields to continue to improve the designer experience. /v/ To further improve the application-building experience, we\'ve added default values to some of the common fields where designers manually enter values. #### Context for Related Actions #### When selecting a process model for a [new related action](Create_a_Record_Type.md#Add_a_Related_Action), we now populate the **Context** field with the [process parameters](Process_Variables.md#parameters) to get you started. <img src="images/release_notes_16_3/dictionary_prepopulates.png"> #### Save-Interface-As Dialog #### The interface designer\'s [Save As](link) function now pre-populates information for you when you save a form. When saving, your form name will be pulled from your interface and pre-populated into the name field in the **Save As** window. This not only saves you time, it also ensures the continuity of your material. <img src ="images/release_notes_16_3/save_as_prepopulation.png"> #### Save In Folder #### In Appian Designer, the **Save In** folder will be pre-populated for expression rules, interfaces, and constants at creation when the system can make a smart folder recommendation, so that designers can more quickly create objects. ### Multiple Sort for a!queryEntity() ### You can now sort on multiple columns when using [a!queryEntity()](System_Functions.md#a!queryEntity.28.29). To accomplish this, pass an array of [a!sortInfo()](System_Functions.md#a!sortInfo.28.29) functions into a `PagingInfo` data type. See [Query Recipes](Query_Recipes.md) for details on how to use this capability. ### Batch Testing Improvements ### Last release, we introduced [new batch-testing features](link to hl testing page) to facilitate faster development cycles with improved quality assurance. This release, we\'ve made these features more interactive and granular to provide more flexibility in test management. #### New Data Types for Batch Testing of Expression Rules #### The [TestRunResult](Parsing_Batch_Test_Results_for_Expression_Rules.md#TestRunResult), [ApplicationTestResult](Parsing_Batch_Test_Results_for_Expression_Rules.md#ApplicationTestResult), [ObjectTestResult](Parsing_Batch_Test_Results_for_Expression_Rules.md#ObjectTestResult), and [TestCaseResult](Parsing_Batch_Test_Results_for_Expression_Rules.md#TestCaseResult) data types used by the [Start Rule Tests](Automated_Testing_for_Expression_Rules.md) smart services can now be used in expression rules, interfaces, and process models. This allows for easier management of the test results data throughout your application. /v/This allows designers to scale testing applications.... #### Application URL Available in Application Test Results #### A new field, `url`, has been added to the [ApplicationTestResult](Parsing_Batch_Test_Results_for_Expression_Rules.md#ApplicationTestResult) data type. The field provides the URL to the application whose test results the data is from. This provides a way to expose a link back to tested applications in application designer from the interfaces built to display expression rule test results. ### List Lengths in Expression Rule Designer ### The Test Output section of the expression rule designer now displays how many items are in the output of the rule when the output is a list. <img class="screenshot" src="images/ERD_List_Length.png"/> ### Web API URLs in Designer ### The URL for a Web API is now displayed in the test pane of the Web API Designer when the Web API is for `PUT`, `POST`, and `DELETE` Web APIs. The URL was already displayed for `GET` Web APIs. <img class="screenshot" src="images/release_notes/WebApiUrl.png"/> ### Save as Default Test Values Link Always Shown ### The **Save as default test values** link in the **Test** dialog of the [interface designer](Interface_Designer.md#Save_Default_Test_Values) is now always shown, even when the test values have not changed. This reduces the number of clicks that are required to update your default test values. ## Appian Administrators ## This section describes new features for administering Appian. ### Import and Export of Administration Console Settings ### Last release we made it possible to import and export administration console settings that were related to application development. Now all system settings (excluding custom authentication) can be imported and exported as well. <img class="screenshot" src="images/RN_AC_System_Settings_Grid.png"/> The new administration console settings available for import and export: * Appian Authentication * System Branding * Mobile Configurations * Deployment and Data Retention settings * Default User Profile Visibility * Editable User Profile Fields * Enabling Appian Email * Quick Apps Data Source #### Import Customization #### Since your authentication settings and system branding may be different across environments, all the values on the **Appian Authentication** and **Branding** pages can now be set during import using the [import customization file](Application_Deployment_Guidelines.md#Import_Customization) that was released in Appian 16.2. This allows you to import the same package to different environments with those different values, which means you never have to manually configure these settings in multiple environments again. ## Server Administration ## This section describes new features for server administrators. ### Process Execution Engine Throughput ### Responsibility for archiving processes has been moved from the process execution engines to the application server, which frees the process execution engines to spend a larger portion of their time executing processes. Sites with heavy load on the execution engines and lots of archiving should see increased process execution throughput from this change. ### Expression Rule Test Cases Metrics Log ### Various data metrics about expression rule test cases and their assertions are now available in `expression_rule_test_cases.csv` in the `<APPIAN_HOME>/logs/data-metrics` directory. See Also: [Expression Rule Test Cases Metrics Log](Logging.md#Expression_Rule_Test_Cases_Metrics_Log) ## Appian Developer ## This section describes new features for developers. ## Appian Cloud ## The following describes changes that affect all **Appian Cloud** customers. ### MySQL 5.7 ### MySQL Community Server 5.7 replaces MySQL Community Server 5.6 as the primary data source for Appian Cloud sites. Please review the following documentation from MySQL to learn more about the changes introduced in newer versions of MySQL: - https://dev.mysql.com/doc/refman/5.7/en/upgrading-from-previous-series.html We recommend reviewing these documents and update any incompatible query syntax you might be using in your applications. This can be completed before being converted to our latest release to avoid any problems. ### End of Support for TLS 1.0 in May of 2017 ### Appian Cloud will no longer be supporting TLS 1.0. All incoming web traffic to Appian Cloud sites will be encrypted using TLS 1.1 or TLS 1.2, both of which are already supported by Appian Cloud. The Payment Card Industry (PCI) security council released PCI Data Security Standard (DSS) 3.1. PCI DSS deprecated SSL 3.0 and TLS 1.0 as secure protocols. This change has been acknowledged as a best practice across the industry and all major service providers are removing or have removed TLS 1.0 for web traffic. More information about this change is avilable in our documentation: https://forum.appian.com/suite/help/16.2/kb/kb-1064.html ## Behavior Changes ## The changes documented below may affect your applications. Note both the previous and new behaviors and make any updates as needed to adjust for these changes upon migration to this version of Appian. ## Resolved Issues ## This release resolves the issues listed below. To assist you in your migration planning, issue severity is listed for each item. The values of high, medium, and low are based on the criteria of system availability, system integrity, and confidentiality. Use this information, along with how you use Appian, to evaluate the applicability of this version to your deployment. ### Appian Designer ### - **AN-50362** - Low <br/> When importing an update to a data store\'s entities you no longer need to import the package twice for all objects to import successfully. Objects referencing data store entities that are being added to a data store that is in the same import package and already exists on the target system will no longer fail to import. - **AN-69480** - Low <br/> User record links in SAIL no longer cause an error when the linked user is not visible or does not exist. Instead, the link displays, though the user record won\'t be displayed if the link is clicked. This matches the previously existing behavior of other record links. - **AN-57415** - Low <br/> Deleted data types no longer show up as missing precedents of process models that have process variables of those data types. - **AN-68455** **[BRETT TOO GENERIC]** - Low <br/> When an unexpected error occurs during application import, a detailed error message is now shown in the import result dialog. - **AN-68459** **[MISSING SOMETHING--A WORD?]** - Low <br/> When creating a data type from an XSD that contains both the data type and a precedent data type, the "Data type to be created" now correctly lists each data type only once. LAST PART IS STRANGE - **AN-67927** - Low <br/> Opening a process model from Appian Designer now consistently opens the process model in a new tab in the process modeler. Previously, certain navigation patterns would cause the process modeler window to refresh and close all existing tabs. - **AN-67939** - Low <br/> The color picker used in the font dialog and rich text editor shows the colors in the expected order. ### Appian Administration Console ### ### Server Administration ### ### Appian Developer ### ### Platform ### - **AN-63256** - Low <br/> The "Operation Name" field is now correctly recorded in `data_store_details.csv` for write to data store transactions. Previously the value would be recorded as `null`. - **AN-69497** - Low <br/> Quotation marks in exported application packages are now represented as `"` rather than `&quot;`. ## Deprecations ## The features listed below are deprecated and will be removed in a future release of Appian. Do not begin using deprecated features, and transition away from any prior usage of now deprecated features. Where applicable, supported alternatives are described for each deprecation. ### Application Portal ### The Application Portal has been deprecated and will be removed in a future release (no sooner than July 2018) of Appian. We recommend that you use [Tempo](Appian_Workspaces.md#tempo_interface), [sites](Sites.md), and/or [embedded interfaces](Embedded_Interfaces.md) as the environment(s) for your users. ### Communication Smart Services ### The following smart service has been deprecated: - Send Alert Designers should use the [Send Email Smart Service](Send_Email_Smart_Service.md) or [News](News.md) instead. ### Portal Management Smart Services ### The following smart services have been deprecated: - Create Case Management Page - Create Page - Delete Page - Edit Page Properties - Modify Page Security - Publish Page - Set Global Home Page - Set User Home Page Designers should use [Tempo](Appian_Workspaces.md#tempo_interface), [Sites](Sites.md), and [Embedded Interfaces](Embedded_Interfaces.md) instead. ### Communities ### Communities have been deprecated. Since Appian 7.9, it has been possible to create Knowledge Centers without a parent, so Communities are no longer necessary for application design. Designers should use [Knowledge Centers](Document_Management.md#Knowledge_Centers) instead. ### Document Management Smart Services ### The following smart services have been deprecated along with Communities: - Add Attachment - Delete Community - Edit Community Properties - Modify Community Security - Move Community - Move KC - Reactivate Community - Set User Storage Space Designers should use [Knowledge Centers](Document_Management.md#Knowledge_Centers) instead. ### Forum-related Data Types ### The following data types have been deprecated: - Forum - Message - Discussion Thread Designers should use [Social Smart Services](Smart_Services.md#Social) rather than Forum Management Smart Services for all process-based collaboration. See also [Tempo Interface](Appian_Workspaces.md#tempo_interface) and [News](News.md) for additional information on colaboration functionality. ### Attachments and Notes on Process Models ### The ability to add attachments and notes to process models has been deprecated. Designers should use [Document Management](Document_Management.md) and [Data Stores](Data_Stores) instead. ### Deprecated System Groups ### The following system groups have been deprecated and are no longer recommended for application design. * Document Administrators: Members of this group can administer applications and data stores as well as the objects in the Rules and Documents tabs of */designer*. Appian recommends using object security to configure user access to design objects. * Portal Administrators: Administration of Appian should be done by users of type System Administrator. * Tempo Global Message Authors: Since all users are able to post messages in Tempo that can be viewed by all users, use of this group is no longer necessary. ### Public Java APIs Deprecated ### The acquisition of Appian services from `ServiceLocator.java` has been deprecated. Appian services should be acquired through service injection from the Appian plug-in framework. As such, the following API class and all of its methods have been deprecated. * `com.appiancorp.suiteapi.common.ServiceLocator.java` The following methods were needed to use the Appian service APIs from a standalone application, support for which was previously removed. As such these methods are being phased out of the public API and have been deprecated: * `com.appiancorp.suiteapi.cfg.ConfigurationLoader.initializeConfigurations` * `com.appiancorp.suiteapi.cfg.ConfigurationLoader.isInitialized` ### Publishing Process Models as Web Services via UDDI ### The ability to publish process models as web services to a a UDDI registry has been deprecated. Publishing process models as web services without using a UDDI registry is not deprecated. ### TLS 1.0 on Appian Cloud ### Support for TLS 1.0 on Appian Cloud sites is deprecated and will be removed in the future. Browsers and other clients that wish to connect to Appian Cloud sites should use TLS 1.1 or 1.2. See [kb-1064](kb/kb-1064.md) for more detail. This is a global deprecation for Appian Cloud regardless of the version of individual Appian Cloud sites. This deprecation does not affect on-premise installations. ### Web.xml Modifications ### Previous versions of Appian required modifying a file called `web.xml` in order to make certain configuration changes. Support for configuring or customizing Appian by making changes to the `web.xml` file is deprecated and will not be supported in a future release. The one exception to this is changing local installations from running over HTTPS to running over HTTP. ### Multiple Gateways on Windows Environments ### The ability to configure [multiple gateways](Creating_a_Dual_Gateway_Topology.md) in a Windows environment has been deprecated. Multiple gateways continue to be supported in [Linux environments](Creating_a_Distributed_Environment_on_Linux.md). ## Removals ## The following features have been removed from Appian and are no longer available for use. If you are using any of these features, you must move away from their use before upgrading to this version. ### Microsoft Internet Explorer 9 & 10 ### Support for Microsoft Internet Explorer 9 and 10 have been removed as of this version of Appian. See [Web Browsers](System_Requirements.md#Web_Browsers) for a list of supported browsers. ### Public Java APIs Removed ### The following API classes have been removed from the public API: * `com.appiancorp.services.ASLIdentity.java` * `com.appiancorp.services.ContextSensitiveService.java` * `com.appiancorp.services.ExtendedServiceLocator.java` * `com.appiancorp.services.ReleasableService.java` * `com.appiancorp.services.ServiceConfiguration.java` * `com.appiancorp.services.ServiceInfo.java` * `com.appiancorp.services.ServiceManager.java` * `com.appiancorp.services.ServiceManager.ListNamingEnumeration.java` * `com.appiancorp.services.ServiceManager.ServiceInvocationHandler.java` * `com.appiancorp.services.ServiceManagerConfigurator.java` * `com.appiancorp.services.ServiceParameter.java` * `com.appiancorp.services.ServiceProperty.java` * `com.appiancorp.services.SimpleASLIdentity.java` ### Stacked Bar Chart ### The stacked bar chart component has been removed. Instead, use the [bar chart component](SAIL_Components.md#BarChart) with the stacking option. '; preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0); // Print the entire match result var_dump($matches);

Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php