Export (0) Print
Expand All
3 out of 4 rated this helpful - Rate this topic

String::StartsWith Method (String)

Determines whether the beginning of this string instance matches the specified string.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)
bool StartsWith(
	String^ value


Type: System::String

The string to compare.

Return Value

Type: System::Boolean
true if value matches the beginning of this string; otherwise, false.

value is nullptr.

This method compares value to the substring at the beginning of this instance that is the same length as value, and returns an indication whether they are equal. To be equal, value must be an empty string (String::Empty), must be a reference to this same instance, or must match the beginning of this instance.

This method performs a word (case-sensitive and culture-sensitive) comparison using the current culture.

Notes to Callers

As explained in Best Practices for Using Strings in the .NET Framework, we recommend that you avoid calling string comparison methods that substitute default values and instead call methods that require parameters to be explicitly specified. To determine whether a string begins with a particular substring by using the string comparison rules of the current culture, call the StartsWith(String, StringComparison) method overload with a value of StringComparison::CurrentCulture for its comparisonType parameter.

The following example demonstrates how you can use the StartsWith method.

using namespace System;
using namespace System::Collections;
String^ StripStartTags( String^ item )

   // try to find a tag at the start of the line using StartsWith 
   if ( item->Trim()->StartsWith( "<" ) )

      // now search for the closing tag->->. 
      int lastLocation = item->IndexOf( ">" );

      // remove the identified section, if it is a valid region 
      if ( lastLocation >= 0 )
            item = item->Substring( lastLocation + 1 );

   return item;

int main()

   // process a string that contains html tags 
   // this sample does not remove embedded tags (tags in the middle of a line) 
   array<String^>^strSource = {"<b>This is bold text</b>","<H1>This is large Text</H1>","<b><i><font color=green>This has multiple tags</font></i></b>","<b>This has <i>embedded</i> tags.</b>","<This line simply begins with a lesser than symbol, it should not be modified"};
   Console::WriteLine( "The following lists the items before the tags have been stripped:" );
   Console::WriteLine( "-----------------------------------------------------------------" );

   // print out the initial array of strings
   IEnumerator^ myEnum1 = strSource->GetEnumerator();
   while ( myEnum1->MoveNext() )
      String^ s = safe_cast<String^>(myEnum1->Current);
      Console::WriteLine( s );

   Console::WriteLine( "The following lists the items after the tags have been stripped:" );
   Console::WriteLine( "----------------------------------------------------------------" );

   // print [Out] the* array of strings
   IEnumerator^ myEnum2 = strSource->GetEnumerator();
   while ( myEnum2->MoveNext() )
      String^ s = safe_cast<String^>(myEnum2->Current);
      Console::WriteLine( StripStartTags( s ) );

.NET Framework

Supported in: 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

.NET for Windows Store apps

Supported in: Windows 8

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
© 2014 Microsoft. All rights reserved.