不正なURIを検出するマクロです。CSS仕様でbaduri1マクロは次のように定義されています。
url\({w}([!#$%&*-~]|{nonascii}|{escape})*{w}
順番 | パターン | 説明 |
---|---|---|
1 | url\( | 'u'+'r'+'l'+'(' |
2 | ({w}([!#$%&*-~]|{nonascii}|{escape})* | 2aのパターンの後に、2b, 2c, 2dのいずれかのパタンが0回以上繰り返される。 |
2a | {w} | 0個以上の
|
2b | [!#$%&*-~] | 次のいずれかの文字。
|
2c | {nonascii} | 非ASCII文字(nonasciiマクロで検出) |
2d | {escape} | エスケープ文字(nonasciiマクロで検出) |
4 | {w} | 0個以上の
|