GitHubから正規表現が扱えるSkRegExpWをDLして、Lazarusで試してます。
Unicodeモードでコンパイルすると、本体は動作してるみたいなんですが。
正規表現オプションの意味がわからずに困ってます。
ヘルプが付属してないし、作者さんのホームページも閉じている様です
下記の部分を添削、補填して頂けると助かります。
{ 文字照合オプション }
TRECompareOption = (coIgnoreCase, 英字の大文字と小文字の区別をしない
coIgnoreWidth, 半角と全角の区別をしない(英字、?数字、?記号)
coIgnoreKana, カタカナの半角と全角の区別をしない
coASCIIOnly); ASCII表の0から7Fまでの範囲限定する
{ 正規表現オプション TRegExOptionとは、delphiの RegularExpressions.TRegExOptionの事 }
TREOption = (roNone, TRegExOption のroNoneと同じ意味
roIgnoreCase, TRegExOptionのroIgnoreCaseと同じ意味
roMultiLine, TRegExOptionのroMultiLineと同じ意味
roNamedGroupOnly, ???ー>TRegExOptionのroExplicitCaptureと同じ意味かな
roSingleLine, TRegExOptionのroSingleLineと同じ意味
roExtended, ???ー>?
roIgnoreWidth, 文字照合オプションと同じ??
roIgnoreKana, 文字照合オプションと同じ??
roDefinedCharClassLegacy, ???ー>?
roAutoCallout, 多分、Calloutイベントをコールする様になる
roASCIICharClass, ???ー>?
roASCIIOnly); 文字照合オプションと同じ??
作者の小宮さん、ページ閉じちゃったんですよね…。ということでこちらでどうぞ。
ドキュメント | SkRegExp
https://web.archive.org/web/20180111152614/http://skregexp.komish.com/docs/
TReOptionは記述がありますが、
TREOptions | SkRegExp
https://web.archive.org/web/20180111125021/http://skregexp.komish.com/docs/types/treoptions/
TRECompareOptionは見当たらないですね…
ドキュメント確認できました。情報に感謝します。
ソースを追いかけたところ、本体のTSkRegExpクラスでは
TRECompareOptionのオプションを設定するプロパティが無く、
TREOptionのプロパティで全部まかなう様です。
日本語が使えることが判っている正規表現クラスが、
lazarusで動くのが助かります。作者さんに感謝です。
ツイート | ![]() |