Logo

Programming-Idioms

  • C++

Idiom #96 Check string prefix

Set the boolean b to true if string s starts with prefix prefix, false otherwise.

Are the first characters of s equal to this prefix?
var b = s.startsWith(prefix);

ECMAScript 6 and above.
var b = (s.lastIndexOf(prefix, 0) === 0);

Note the second parameter to lastIndexOf. This is not, however, the most readable possible code.
#include <string>
bool b = s.starts_with(prefix);

C++20
#include <string>
std::string prefix = "something";
bool b = s.compare(0, prefix.size(), prefix) == 0;

empty prefix is true
with Ada.Strings.Fixed;
B := Ada.Strings.Fixed.Index (S, Prefix) = S'First;

New implementation...