一致する文字列の終わりの始まりを示す^(サーカムフレックス)文字と$(通貨またはドル)文字を含まない例をほとんど見ました。しかし、html5仕様ではこれに関して何も見つかりませんでした。それらはパターンに暗黙的に含まれていますか?html5仕様では、それらは暗黙的であると述べられています。
コンパイルされたパターンの正規表現は、文字列と照合する場合、その開始を文字列の先頭に固定し、その終了を文字列の末尾に固定する必要があります。これは、この属性に使用される正規表現言語がJavaScriptで使用されるものと同じであることを意味しますが、パターン属性がサブセットだけでなく値全体と照合される点が異なります(最初に^(?:を意味するかのように)パターンの)と最後の)$)。
type = "text"入力では、パターンはどちらの形式でも正常に機能しますが、type = "tel"入力では、正規表現が期待どおりに機能するように文字を削除する必要がありました。OperaとFirefoxの両方でテストしました。
これはブラウザのバグですか?bugzillaなどでバグを報告する必要がありますか?
編集:縮小されたテストケースを作成できないため、奇妙なバグに遭遇したようです。ページへの単純な入力では、上記の動作は示されません。ただし、問題は残ります。私はすべきですか、それともダーン^と$アンカーを使用すべきではありませんか?