私は単純な正規表現でなければならないことをしようと壁に頭を打ちました - 一致する必要があります。例えば12
部分1桁または2桁の数字を入力し、任意の英数字以外の数字(:.-,_
など)を入力すると、文字列po
となります。1桁または2桁の正規表現、任意の非英数字、2つの既知の英字
最終的にはC#
になりますが、コマンドラインでも通常grep
で作業したいと思います。 C#
にアクセスできませんでしたが、それは役に立ちません。
私は単純な正規表現でなければならないことをしようと壁に頭を打ちました - 一致する必要があります。例えば12
部分1桁または2桁の数字を入力し、任意の英数字以外の数字(:.-,_
など)を入力すると、文字列po
となります。1桁または2桁の正規表現、任意の非英数字、2つの既知の英字
最終的にはC#
になりますが、コマンドラインでも通常grep
で作業したいと思います。 C#
にアクセスできませんでしたが、それは役に立ちません。
^[0-9][0-9]?[^A-Za-z0-9]?po$
あなたがここでそれをテストすることができます。http://www.regextester.com/
Regex r = new Regex(@"^[0-9][0-9]?[^A-Za-z0-9]?po$");
if (r.Match(someText).Success) {
//Do Something
}
は@パーサを意味有効シンボルである、覚えておいてください、C#でこれを使用するには、文字通りの文字列を取ります(例えば、あなたが1つのバックスラッシュに\\を書く必要はありません)
^[0-9]{1,2}[:.,-]?po$
他の許容される非アルファ中括弧にも数字で区切って解析することができます。
^\d{1,2}[\W_]?po$
\d
数を定義し、{1,2}
は前式の1又は2を意味し、\W
は、非単語文字を定義します。
... ' - 'の前にそれらを追加すると、驚くべき結果が得られます。 –