[
スレッド全体
]
▼
2014/12/31 (水) 13:08:40
匿名
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0
[2223]
ダブルクォーテーション文字列の判定が変
Onigmo-5.15.0 のソース regexec.c の 1396 行目からダブルクォーテーション文字列の判定が変になります。
https://
github.
com/
k-
takata/
Onigmo/
blob/
Onigmo-
5.
15.
0/
regexec.
c#
L1396
2.1.1.4 Stable と Rev.3908 で確認しました。
▼
2014/12/31 (水) 16:28:40
もか
INCM1.23a
[2224]
Re: ダブルクォーテーション文字列の判定が変
そのURLで確認しました。
今の実装だと、「R"なにがし(」の文字列は、C++11のRaw Stringとみなされるので、
その終端がないものとして、この場合は「) "」が現れるまで文字列になります。
もしRと"の間にスペース1つでもあればRaw Stringとは認識されません。
これどうしたらいいと思う?
1. Rの直前にu8w以外が来ているかチェックする
\b(u|u8|w)R"[^(]*\(
の正規表現相当でチェック。\bの具体的パターンはよく分からない。
2. C++とは別にC/C++03文字列を追加してそっちを使ってもらう
作るのは簡単そうだけど、使う人が面倒
しかし、""文字列型を汎用として使うにはR"str...も普通の文字列としたい場合などあったほうがいいかも。
1.2.両方かな。
PRIdPTR等はC99みたいなので、何とかしようと思います。
▼
2014/12/31 (水) 16:39:53
もか
INCM1.23a
[2225]
Re2: ダブルクォーテーション文字列の判定が変
>\b(u|u8|w)R"[^(]*\(
訂正。たぶんこう
\b(u8|u|U|L|)R"[^(]*\(
\bはたぶん
^|[!"#$%&'()=@{};:<>?,.*/\-\+\[\]\\s]
▼
2014/12/31 (水) 19:35:45
もか
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0
[2226]
Re3: ダブルクォーテーション文字列の判定が変
パッチをトラッカーに登録しました
https://
sourcefo
rge.
net/
p/
sakura-
editor/
patchuni
code/
954/
▼
2014/12/31 (水) 21:41:19
匿名
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0
[2227]
Re4: ダブルクォーテーション文字列の判定が変
お疲れ様です。
[
▼次のスレッド
]
INCM/CMT
Cyclamen v3.81
[ut:0.010][st:0.000]