| |
HmJre.dll の \w \s \d などの対応について、前のスレッドでご意見をいただき
ありがとうございました。
前のスレッド:
turukame.3:04604| 正規表現のperl互換 \w \s \d などについて
http://www.maruo.co.jp/turukame/3/x04604_.html#4604
社内でいろいろ相談し、やはり互換性は重要ということで、全く違う案となって
しまいましたが仕切りなおして改めて案を書かせていただきます。
またご意見などありましたらコメントいただけると助かります。
●新しい案
・\s \S \d \D を追加
・\w は [a-zA-Z_]+ と同じ(変更なし)
・[^x]で改行マッチはする(変更なし)
・\c を追加して、Perlの\w相当 [a-zA-Z_0-9] と同じ
・\C を追加して、Perlの\W相当 [^a-zA-Z_0-9] と同じ
・\i を追加して、[a-zA-Z_] と同じ
・\I を追加して、[^a-zA-Z_] と同じ
・\b \B を追加して、単語の先頭/最後
setcompatiblemodeも互換性オプションも無しで、追加があるだけです。
\c は Perl では制御文字とぶつかりますが、仕方ないということで。
(制御文字は\x01のように書くのが王道…?)
\c \i とした根拠は以前IKKIさんに紹介していただいたページを参考にしました。
(XMLスキーマのところ)
参考:
http://www.regular-expressions.info/refflavors.html
http://www.regular-expressions.info/xmlcharclass.html
これと同じではないですが、\i\c* と書くことでプログラミング言語の関数/変
数名なども簡単に書けて、\w 1つだけよりも便利かもしれないです。
|
|