- ベストアンサー
正規表現で
正規表現で 8文字以上、15文字以内で1文字以上の英語(大文字小文字どちらか一方で可)と数字が含まれている表現を考えているのですが、思いつきません。 [0-9a-zA-Z]{8,15} だと全て数字・英語でも通ってしまうので、困っています。 どなたか詳しい方、ご教授ください。
- みんなの回答 (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
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
回答No.1
2段階で調べたらどうでしょう
質問者
お礼
やはり、一回で検索する方法はなさそうですね。 2段階で調べてみます。
お礼
言語ですが、.net で RegexクラスのIsMatchメソッドで比較を行おうと思っています。 VBScript の表現でも感じはわかりました。 ありがとうございます。