let t = if s.starts_with(p) { &s[p.len()..] } else { s };
let t = s.strip_prefix(p).unwrap_or(s);
let t = s.trim_start_matches(p);
size_t l = strlen(p);
const char * t = strncmp(s, p, l) ? s : s + l;
std::string t = s.starts_with(p) ? s.substr(p.size()) : s;
string t = s.chompPrefix(p);
var t = s.startsWith(p) ? s.substring(p.length, s.length) : s;
var t = s.startsWith(p) ? s.replaceFirst(p,"") : s;
if (index(s,p) == 1) then
t = s(len(p)+1:)
else
t = s
end if
t := strings.TrimPrefix(s, p)
t = Maybe.fromMaybe s $ List.stripPrefix p s
let t = s.startsWith(p) ? s.substring(p.length) : s;
String t = s.replaceFirst('^' + quote(p), "");
String t = s.replaceFirst("^" + p, "");
int i = s.indexOf(p), n = p.length();
t = i == 0 ? s.substring(n) : s;
local t = (s:sub(0, #p) == p) and s:sub(#p+1) or s
$t = strpos($s, $p) === 0 ? substr($s, strlen($p)) : $s;
if AnsiStartsStr(p, s) then
t := copy(s, length(p)+1, length(s)-length(p))
else
s := t;
if (0 == index $s, $p) {
my $t = substr $s, length $p;
}
t = s[s.startswith(p) and len(p):]