teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

以外

2017/08/21 14:13

投稿

think49
think49

スコア18194

answer CHANGED
@@ -48,7 +48,7 @@
48
48
  ```
49
49
 
50
50
  最後に「名前」と「値」をパーセントデコード(旧称: URLデコード)します。
51
- 正規表現系統の標準関数が使えないということなので、`chr()` を使いたいところですが、仕方がないので「ASCII値 <-> 文字」の変換マップを自前で用意して変換していきます。
51
+ 正規表現系統以外の標準関数が使えないということなので、`chr()` を使いたいところですが、仕方がないので「ASCII値 <-> 文字」の変換マップを自前で用意して変換していきます。
52
52
 
53
53
  ```PHP
54
54
  '/(?:%[\dA-Fa-f]{2})+|\+/'

1

typo修正

2017/08/21 14:13

投稿

think49
think49

スコア18194

answer CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  ### URL Standard
10
10
 
11
- 時代は移り変わり、RFCで定義されていた URI は WHATWG によって URL Standard 再定義されました。
11
+ 時代は移り変わり、RFCで定義されていた URI は WHATWG によって URL Standard として再定義されました。
12
12
  この仕様は URL のパース処理も規定されているので、URLパーサを作る際にはとても役立ちます。
13
13
  https://triple-underscore.github.io/URL-ja.html
14
14
  https://url.spec.whatwg.org
@@ -20,14 +20,14 @@
20
20
 
21
21
  まず、URLハッシュを取り除きます。
22
22
  この正規表現にマッチした文字列を削除する事で `http://example.com/#?foo=1&bar=2` のようなクエリ文字列ではないURLハッシュ値にマッチしてしまう問題を回避します。
23
- 本来、不正なURLですが、ブラウザは `http://example.com/#foo#bar` において `#foo#bar` をURLハッシュとして扱う為、始めにマッチした # 以降をURLハッシュと見做します。
23
+ 本来、不正なURLですが、ブラウザは `http://example.com/#foo#bar` において `#foo#bar` をURLハッシュとして扱う為、始めにマッチした # 以降をURLハッシュと見做します。
24
24
 
25
25
  ```PHP
26
26
  '/#.*$/'
27
27
  ```
28
28
 
29
29
  次にクエリ文字列にマッチさせます。
30
- 前述の処理でURLハッシュ存在しない事が確定しているので安心して終端までマッチできます。
30
+ 前述の処理でURLハッシュ存在しない事が確定しているので安心して終端までマッチできます。
31
31
  本来、不正なURLですが、`http://example.com/?foo=1&bar=2?&piyo=3` が与えられれば、`?foo=1&bar=2?&piyo=3` をクエリ文字列と見做します。
32
32
 
33
33
  ```PHP