スクリプトで独自の文字クラスを構成し、それを修正(および使用)したいと思います。たとえば、次のようになります。
[:myclass:]
含むa
,*
,\n
(改行文字で)そして[WHITESPACE]
。[:myclass:]
fromにすべての文字を追加したいです[:alnum:]
。p
キャラクターとクラス全体を削除したいと思います。[:upper:]
[:myclass:]
好ましい解決策はスクリプト言語に依存しない。ご希望の方はご利用くださいbash
。
ボーナス質問:これをシステム全体にどのように保存できますか?起動するたびに[:myclass:]
使用できる必要があります。
答え1
文字クラスのリストがCライブラリ(GNU libc、functionなどbuild_charclass
)にハードコードされているかどうかが心配です。posix/regcomp.c
)。これを拡張する唯一の方法は、Cライブラリを再コンパイルすることです。
ロケール定義では、各既存のクラスの内容をカスタマイズできます。
ほとんどの場合、正規表現を文字列で書くだけで十分です。
myclass='a*[:alnum:][:space:]'
regexp="[$myclass]"
この方法では、カテゴリから文字を引くことはできません。]
またはを追加する場合は、言語正規表現で文字クラスの構文を尊重する必要が-
あります。\