1

次のシナリオの正規表現を作成しようとしています:

一致する文字列: mName87.com

そのため、文字列は任意の数の英数字で構成できますが、文字列内の任意の場所にドットを 1 つだけ含めることができます。

この正規表現 : を定式化しまし[a-zA-Z0-9.]たが、複数のドット (.) にも一致します。

ここで何が間違っていますか?

4

5 に答える 5

4

指定した正規表現は、検証しようとしている文字列全体の 1 文字のみと一致します。シナリオで注意すべき点がいくつかあります

  • 文字列全体に一致させたいので、正規表現は^(文字列の先頭) で始まり (文字列の終わり) で終わる必要$があります。
  • 次に、任意の数の英数字を受け入れたいとします。これは で行われます。[a-zA-Z0-9]+ここで+は 1 つ以上の文字を意味します。
  • 次に、ポイントを一致させます:(\.ここでエスケープする必要があります)
  • 最後に、さらに多くの文字を再び受け入れます。

すべてをまとめると、正規表現は次のようになります。

^[a-zA-Z0-9]+\.[a-zA-Z0-9]+$
于 2013-07-25T11:29:24.500 に答える
1

この正規表現を使用できます:

\\w*\\.\\w*

ここで試すことができます

于 2013-07-25T11:28:35.280 に答える
0

試してみてください:

^([a-zA-Z0-9]+\.)+[a-zA-Z]$
于 2013-07-25T11:25:27.373 に答える
0

この正規表現を使用します^[a-zA-Z0-9]*\.[a-zA-Z0-9.]*$

于 2013-07-25T11:31:28.563 に答える
0

編集:

試す

([a-zA-Z0-9]+\.[a-zA-Z0-9]+)|(\.[a-zA-Z0-9]+)|([a-zA-Z0-9]+\.)

つまり、[ドットで終わる単語] OR [2 つの単語と真ん中のドット] OR [ドットで始まる単語]

于 2013-07-25T11:26:08.863 に答える