egrep をインストールした後、Windows で正規表現を検索しようとしています。
これは私が見つけようとしているものの例です:
以下の文字列では、単一の特定の文字を比較している場所に一致させたい
if (lod_user.is_type == "A" || lod_user.is_type == "E" || lod_user.is_type == "S" || lod_user.is_type == "X")
したがって、許容できる結果はs_type == "A"
、またはs_type == "S"
これらは私が試みたクエリです:
"c:..\..\Program Files (x86)\GnuWin32\bin\egrep.exe" -Hn --regexp=s_type[\s-]*==[\s-]*"[CUOMPSQDEXYAZ]" FILENAME
egrep へのアドレス。ここでは単に egrep と呼びます。
egrep -Hn --regexp=type[\s-]*==[\s-]*"[CUOMPSQDEXYAZ]" FILENAME
egrep -Hn --regexp=[\s-]*==[\s-]*"[CUOMPSQDEXYAZ]" FILENAME
egrep -Hn --regexp=[\s-]*==[\s-]*"A" FILENAME
1文字でテストするだけ
egrep -Hn --regexp=^type[\s-]*==[\s-]*"[CUOMPSQDEXYAZ]"$ FILENAME
egrep -Hn --regexp=^type$[\s-]*==[\s-]*"[CUOMPSQDEXYAZ]" FILENAME
すべての試行を投稿するつもりはありません。ある時点で、いじって推測し始めたばかりだからです。この正規表現はhttp://gskinner.com/RegExr/s_type[\s-]*==[\s-]*"[CUOMPSQDEXYAZ]"
で動作するので、cmd に何か関係があり、エスケープされていない文字の問題があると考えましたが、引用符をたとえばに置き換えてみましたが、まだ何もありません。この正規表現は機能しますが、私が望むものを達成しません。^"
[\s-]*==[\s-]*"."