Finds the value a subdomain value from a valid URL. Input values must be of URL or String type.In this implementation, a subdomain value is the first group of characters in the URL after any protocol identifiers ( http:// or https://, for example).

Basic Usage

URL literal example:

derive value: SUBDOMAIN('' ) as: 'myDomain'

Output: Generates a column containing the value www.

derive value: SUBDOMAIN('') as: 'myDomain'

Output: Generates a column containing the value www.exampl.

Column reference example:

derive value: SUBDOMAIN(myURLs) as: 'myDomain'

Output: Generates the new myDomain column containing the subdomain values extracted from the myURLs column.


derive value: SUBDOMAIN(column_url)

ArgumentRequired?Data TypeDescription
column_urlYstringName of column or String or URL literal containing the sub-domain value to extract

For more information on syntax standards, see Language Documentation Syntax Notes.


Name of the column or URL or String literal whose values are used to extract the subdomain value.

  • Missing input values generate missing results.
  • Multiple columns and wildcards are not supported.

Usage Notes:

Required?Data TypeExample Value
YesString literal or column reference (URL)


Example - Domain, Subdomain, and Suffix functions

This examples illustrates how you can extract component parts of a URL using the following functions:

  • DOMAIN - extracts the domain value from a URL. See DOMAIN Function.
  • SUBDOMAIN - extracts the first group after the protocol identifier and before the domain value. See SUBDOMAIN Function.
  • SUFFIX - extracts the suffix of a URL. See SUFFIX Function.


Your dataset includes the following values for URLs:



When the above data is imported into the application, the column is recognized as a URL. All values are registered as valid, even the IPv4 address.

To extract the domain and subdomain values:

derive value: DOMAIN(URL) as: 'domain_URL'

derive value: SUBDOMAIN(URL) as:'subdomain_URL'

derive value: SUFFIX(URL) as:'suffix_URL'

You can use the Cloud Dataprep pattern in the following transform to extract protocol identifiers, if present, into a new column:

extract col:URL on:`{start}%*://`

To clean this up, you might want to rename the column to protocol_URL.

To extract the path values, you can use the following regular expression:

NOTE: Regular expressions are considered a developer-level method for pattern matching. Please use them with caution. See Text Matching.

extract col: URL on: /[^*:\/\/]\/.*$/

The above transform grabs a little too much of the URL. If you rename the column to path_URL, you can use the following regular expression to clean it up:

extract col:path_URL on:/[!^\/].*$/

If you drop the path_URL column and rename the path_URL1 column to the dropped one, you should have the following results:


URLpath_URLprotocol_URLsubdomain_URLdomain_URLsuffix_URL wwwexamplecom examplecom http:// www.appexamplecom www.some.appexamplecom some.appexamplecom someexamplecom examplecom

Was this page helpful? Let us know how we did:

Send feedback about...

Google Cloud Dataprep Documentation