GitHubContribute in GitHub: Edit online

!startswith_cs operators

Filters a record set for data that does not start with a case-sensitive search string.

The following table provides a comparison of the startswith operators:

Operator Description Case-Sensitive Example (yields true)
startswith RHS is an initial subsequence of LHS No "microsoftWindowsSource1" startswith "Mic"
!startswith RHS isn't an initial subsequence of LHS No "microsoftWindowsSource1" !startswith "Cis"
startswith_cs RHS is an initial subsequence of LHS Yes "microsoftWindowsSource1" startswith_cs "mis"
!startswith_cs RHS isn't an initial subsequence of LHS Yes "microsoftWindowsSource1" !startswith_cs "cis"

  • RHS = right hand side of the expression
  • LHS = left hand side of the expression

For further information about other operators and to determine which operator is most appropriate for your query, see datatype string operators.

Performance tips

Performance depends on the type of search and the structure of the data.

For faster results, use the case-sensitive version of an operator, for example, hassuffix_cs, not hassuffix.

If you're testing for the presence of a symbol or alphanumeric word that is bound by non-alphanumeric characters at the start or end of a field, for faster results use has or in.


T | where col !startswith_cs (expression)


  • T - The tabular input whose records are to be filtered.
  • col - The column to filter.
  • expression - Scalar or literal expression.


Rows in T for which the predicate is true.

## Example In this example the query return the latest 3 log sources that do not start with the value "Cisco".
| project original_time, data_source_name
| where data_source_name !startswith_cs "Cisco"
|take 3


original_time data_source_name
2023-04-07T23:59:57.495Z microsoftWindowsSource1
2023-04-07T23:59:57.496Z microsoftWindowsSource6
2023-04-07T23:59:57.496Z microsoftWindowsSource3