[解決済み] 何にもマッチしない正規表現
質問
くだらない質問に聞こえるかもしれませんが、何人かの開発者仲間と長い間話していて、楽しいことを考えるように聞こえました。
どんな文字列にも絶対にマッチしないREGEXとはどのようなものでしょうか?
編集 : なぜこれが欲しいのか?第一に、このような表現を考えるのが面白いから、第二に、あるスクリプトで必要だからです。
そのスクリプトの中で、私は辞書を次のように定義しています。
Dictionary<string, Regex>
. これには、ご覧のように、文字列と式が含まれています。
この辞書をもとに、この辞書を参照するだけのメソッドを作成し、そのうちのひとつは解析されたログファイルに対して正規表現をマッチングさせます。
ある式にマッチした場合、別の
Dictionary<string, long>
には、式が返す値が追加されます。そこで、辞書の式にマッチしないログメッセージをキャッチするために、"unknown"という新しいグループを作りました。
このグループには、他のどのグループにもマッチしなかったものがすべて追加されます。しかし、"unknown"式が(誤って)ログメッセージにマッチしないように、どんな文字列を与えても絶対にマッチしない式を作らなければなりませんでした。
というわけで、この「どうでもいい質問」の理由は以上です。
解決方法は?
これは、実はとても簡単なことなんです。 実装/フラグに依存しますが *:
$a
文字にマッチします
a
を文字列の末尾に追加します。がんばってください。
警告
この式は高価です。行全体をスキャンして行末のアンカーを見つけ、それから初めて
a
で、負のマッチを返します。(詳しくは下のコメントをご覧ください)。
*
元々、私はマルチラインモードの正規表現についてあまり考えていませんでした。
$
も行末にマッチします。実際には、空の文字列
の直前で、改行
のような普通の文字が
a
の後に現れることはありません。
$
.
関連
-
[解決済み] スペースとタブの任意のシーケンスにマッチする正規表現を作成する方法
-
[解決済み] 正規表現で複数行にまたがる任意の文字にマッチさせるにはどうしたらよいですか?
-
[解決済み] 単語を含まない行にマッチする正規表現
-
[解決済み] XHTMLの自己完結型タグを除くオープンタグにマッチするRegEx
-
[解決済み] JavaScriptの正規表現でマッチしたグループにアクセスするにはどうすればよいですか?
-
[解決済み] grepによるネガティブマッチング(fooを含まない行にマッチする)
-
[解決済み] 正規表現を使用した電話番号の検証方法
-
[解決済み] JSで文字列が正規表現にマッチするかどうかをチェックする
-
[解決済み] 正規表現で「この文字列までなら何でもあり」にマッチさせるには?
-
[解決済み] カンマ ',' とセミコロン ';' 以外のすべての文字にマッチする正規表現は何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン