• ベストアンサー

正規表現で

正規表現で 8文字以上、15文字以内で1文字以上の英語(大文字小文字どちらか一方で可)と数字が含まれている表現を考えているのですが、思いつきません。 [0-9a-zA-Z]{8,15} だと全て数字・英語でも通ってしまうので、困っています。 どなたか詳しい方、ご教授ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 Visual Basic と解釈してよいのでしょうか? 何の正規表現か分らないけれども、あえて、VBScript の正規表現のみで表現しようとすれば以下のようになりますね。 Public Function RegExpTest(ByVal arg1 As String) As Boolean   With CreateObject("VBScript.RegExp")    .Global = False    .IgnoreCase = False    .Pattern = "^[0-9a-zA-Z]{8,15}$"    If .Test(arg1) Then      .Pattern = "[a-zA-Z]+"      If .Test(arg1) Then       .Pattern = "\d+"       If .Test(arg1) Then         RegExpTest = True       End If      End If    End If   End With End Function

jan99
質問者

お礼

言語ですが、.net で RegexクラスのIsMatchメソッドで比較を行おうと思っています。 VBScript の表現でも感じはわかりました。 ありがとうございます。

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

2段階で調べたらどうでしょう

jan99
質問者

お礼

やはり、一回で検索する方法はなさそうですね。 2段階で調べてみます。

関連するQ&A