この文字列が期待されると仮定します:100:~#または100:~/tmp
これは、実際には、マシンのターミナルプロンプトと一致させる必要があることを意味します(パスが含まれる場合と含まれない場合があります)。通常、この正規表現パターンでは、次のようになります。
100:(~|/)(/+[a-zA-Z0-9]*)*#
これは、次のような入力文字列に対して機能します。100:~/foo/bar/foo/baz#
ここでテストできます:Regex Pal
しかし、TCLでExpectを使用して、-reそのようなパターンに一致するように追加する必要があります。しかし、私はそうすることを許されていません。上記のパターンを正規表現なしで試しましたが、失敗しました。
100:~#マッチングまたは100:~/tmp非常に単純な現在のパターン: 100:[~/]*#、そしてそれは正規表現ではなく、文字列をマッチングするためのシェル式であると言われました。このパターンは、 (およびはオプション)と。100:[~/]*#の間のすべてに一致することを意味します。従来の正規表現の意味でゼロ以上である通常の文字とは対照的に、文字は何にでも一致するように意図されています。100:[~/]~/#**
Expect withou-reフラグのパターンマッチング式とは正確には何ですか?