이 페이지는 아직 영어로 제공되지 않습니다. 번역 작업 중입니다.
현재 번역 프로젝트에 대한 질문이나 피드백이 있으신 경우 언제든지 연락주시기 바랍니다.

Metadata

ID: csharp-best-practices/startswith-instead-of-indexof

Language: C#

Severity: Info

Category: Best Practices

Description

The rule states that StartsWith should be used instead of IndexOf when checking if a string starts with a specific substring. This is because the StartsWith method is more clear and direct about its intention, making the code easier to read and understand.

The importance of this rule lies in its contribution to cleaner, more maintainable code. StartsWith explicitly communicates that you’re checking for a starting substring, while IndexOf requires a comparison to zero, which may not immediately convey the same intention to other developers reading the code.

How to Remediate

Use the StartsWith method when checking if a string begins with a certain substring. Not only does this make the code more readable, but it also eliminates the need for the equality comparison used with IndexOf, simplifying the code. Here’s an example: instead of writing if (s.IndexOf("abc") == 0) { // code here }, write if (s.StartsWith("abc")) { // code here }.

Non-Compliant Code Examples


if (s.IndexOf("abc") == 0) {
    // code here
}

if (0 == s.IndexOf("abc")) {
    // code here
}

Compliant Code Examples


if (s.StartsWith("abc")) {
    // code here
}
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Security

PREVIEWING: aleksandr.pasechnik/svls-6807-lambda-fips