Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

正規表現での検索文字に\xHHが使えない #1943

Open
halt76 opened this issue Feb 23, 2024 · 2 comments
Open

正規表現での検索文字に\xHHが使えない #1943

halt76 opened this issue Feb 23, 2024 · 2 comments

Comments

@halt76
Copy link

halt76 commented Feb 23, 2024

正規表現での検索文字に \nnn や \xHH が使えません。
too short multibyte code string というエラーが出ます。
\o{nnn} や \x{HHHH} ならば使えています。
また、置換文字には \nnn も \xHH も使えます。
ヘルプを見ると検索文字に使えるような感じなのですが、サクラと bregonig どちらかの不具合でしょうか。

@berryzplus
Copy link
Contributor

ヘルプの記載

利用可能な正規表現

試してみた

ほぼ最新のサクラエディタで試してみました。

No パターン 成否
1 \x20 エラー(too short multibyte code string)
2 \x0020 エラー(too short multibyte code string)
3 \x{0020} 正常に検索される
4 \040 エラー(too short multibyte code string)
5 \o040 検索されて「"\o040"が見つかりません」になる
6 \o{040} 正常に検索される
  • 5については「使える」と書いてない
  • 1, 2, 4の挙動について、ヘルプと合ってない

私見

サクラと bregonig どちらかの不具合でしょうか。

メッセージを見る限りだと、サクラエディタのバグっぽく見えますね。

サクラエディタはv2からbregonigをワイド文字モードで呼び出すように変えていますが、
bregonig.dllがマルチバイトのエラーを返却しているように見えます。
bregonig.dll側に不具合「ワイド文字モードで使えない正規表現」があったとして、
対応責任は呼び出し側にある気がします。

対応するならまず原因調査ですかねぇ。

@usagisita
Copy link
Contributor

古い2chのログ当たりに書いてあると思いますが、bregexpと昔のbregonigは\xHHが使えました。
がbregonigの途中のバージョンで仕様変更されたけど古いヘルプがそのまま残ってる状態です。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants