PowerShellのメール本体からURLを抽出しようとしています。PowerShellで[Regex] :: Matchを使用すると問題が発生する
私は、次の正規表現を使用しています:メールフォルダに、各メール項目の(this siteで見つかった)
$regexURL = "@^(https?|ftp)://[^\s/$.?#].[^\s]*[email protected]"
を、私ループ:
foreach ($Mail in $subfolder.items) {
$a = [Regex]::Match($Mail.Subject, $regexURL).Groups[1].Value
$b = [Regex]::Match($Mail.Body, $regexURL).Groups[1].Value
}
しかし、たとえMail.Subjectか本文には有効なURLが含まれています。$ aと$ bは空のままです。
私はマッチ()がどのように動作しているのか分かりませんでした。
Thanxについては、その質問のヘルプをご覧ください。 Jerome
インデント!投稿する前に修正してください! – Druzion
'$ Mail.Subject'の例と' $ a'を期待するものを投稿してください。 –
'@'は何のためのものですか?他の言語の正規表現であると思われます。 '$ regexURL = '(https?ftp):// [^ \ s /$.?#]。[^ \ s] * $''を試してください。 PS/.NET AFAIKでは 'iS'修飾子は必要ありません。 –