PHP での PCRE 正規表現の \w や \d について
さて問題です。次のコードの実行結果はどうなるでしょうか?
<?php var_dump(preg_match('/\w/u', 'あ')); var_dump(preg_match('/\w/u', ' ')); // 全角スペース var_dump(preg_match('/\w/u', '1')); // 全角の1 var_dump(preg_match('/\d/u', '1')); // 全角の1
答え。
Linux ではこうなりました。
php-4.4.9: int(0) int(0) int(0) int(0) php-5.1.6: int(0) int(0) int(0) int(0) php-5.2.17: int(0) int(0) int(0) int(0) php-5.3.0: int(0) int(0) int(0) int(0) php-5.3.1: int(0) int(0) int(0) int(0) php-5.3.2: int(0) int(0) int(0) int(0) php-5.3.3: int(0) int(0) int(0) int(0) php-5.3.4: int(1) int(0) int(1) int(1) php-5.3.5: int(1) int(0) int(1) int(1) php-5.3.6: int(1) int(0) int(1) int(1) php-5.3.7: int(1) int(0) int(1) int(1) php-5.3.8: int(1) int(0) int(1) int(1) php-5.3.13: int(1) int(0) int(1) int(1) php-5.4.3: int(1) int(0) int(1) int(1)
もし、正解した人がいたら驚きます。正解した人は、是非、コメントしてください。