2017-11-28 18 views
1

PSHファイルへのパラメータを受け入れ、ValidatePatternを使用して検証しています。 [ValidatePattern("**[^a-z][a-z0-9]**")]Powershell - 大文字と小文字を区別するための正規表現。その後は小文字と数字のみを使用します。

正規表現は、この正規表現をしようと小文字と数字のみ

から何かが続く大文字と小文字の最初のを制限する必要があります。

これは私の要件と一致しません。私は以下に詳述しています。

  1. 最初の文字は英小文字でなければなりません。

  2. 制限大文字。

  3. 小文字と数字だけを許可します。このため

+0

私は最初の要件を理解しているかどうかはわかりませんが、 '^ [^ A-Za-z] [a-z0-9] * $ 'を試してください。 '[^ A-Za-z]'はASCII文字以外の1文字にマッチします。 '[a-z0-9] *'は0以上の数字または小文字のASCII文字と一致します。すべてのUnicode文字を受け入れる必要がある場合は、 '^ \ P {L} [\ p {Ll} 0-9] * $' –

+0

@WiktorStribiżewと書くことができます。私は以下に詳述しています。 1.最初の文字は小文字のアルファベットでなければなりません。 2.大文字を制限します。 3.小文字と数字のみを許可します。 4.単一の小文字入力も有効です –

+2

ええ、詳しく教えてください。 *あなたの*要件を満たす必要はありません。あなたのあいまいな説明からわかるものだけです。 –

答えて

2

ないPowerShellの確認も有効なシングル小文字入力が、有効な正規表現は次のとおりです。

^[a-z][a-z0-9]*$ 

ので、試してみてください。

[ValidatePattern("^[a-z][a-z0-9]*$")]. 
+0

ありがとう2oppin .. –

1

さんは分析してみましょう要件:

  • 最初の文字は大文字のアルファベットを下げる必要があります - [a-z]/\p{Ll}
  • 大文字を制限 - [a-z0-9]
  • シングル小文字も入力有効 - ジャスト
  • のみ小文字と数字を許可するパターンで利用していません - それの0回以上の繰り返し

使用

01に一致するように [a-z0-9]パターンの後 *を追加
^[a-z][a-z0-9]*$ 

regex demoを参照してください。

+0

ありがとうWiktorStribiżew –

+0

@HimalayKondekarうれしい。左側の✓をクリックして回答を受け入れることを検討してください([回答を受け入れる方法](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)参照)。上記の答えは、アンカーを含めるように答えを投稿した後に編集されたことに注意してください。 –

関連する問題