電子書籍の厳選無料作品が豊富!

VB6で正規表現(Microsoft VBScript Regular Expression 5.5を使っているのですが、

(1) No001の場合、001を取得
(2) Noの場合は空文字を取得
したいのですが、どうすればよいのでしょうか?

re.Pattern = "^No(.+)$"

この場合、(1)の場合、マッチしますが(2)でマッチしません。

正規表現に詳しい方、VB6で正規表現をよく使う方、教えて下さい。

A 回答 (2件)

"No(.+)$"だと、"No"の後に任意の文字が1個以上無いとマッチしません。



"No"とマッチさせるなら、"No(.*)$"です。

『WindowsユーザのためのLinux入門:正規表現』(←Linuxの解説ですが、基本は一緒なので)
http://tonetsutomu.com/tone/linux/Reference/Regu …
    • good
    • 0

re.Pattern = "No((\d*)|$)$"


といった具合では
Noの後ろの任意の文字(列)ということなら \dを .に代えてください
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!