May a `string` or `string_view` include `'\0'` characters so that the following code prints 1 twice?

Or is this just implementation-defined?

```
#include <iostream>
#include <string_view>
#include <string>

using namespace std;

int main()
{
    string_view sv( "\0hello world", 12 );
    cout << (sv == sv) << endl;
    string str( sv );
    cout << (str == sv) << endl;
}

```

**This isn't a duplicate to the question if strings can have embedded nulls since they obviously can**. *What I want to ask if the comparison of strings or string views is terminated at a 0-character.*