Regular-Expression

使用 Perl 的 Regexp::Common::URI::http 庫從 URL 列表中檢索主機

  • January 4, 2022

目前我正在從一個文本文件中獲取一個 URL 列表,如下所示:

perl -MRegexp::Common=URI -nE 'say $& while /$RE{URI}{HTTP}{-scheme => "https?"}/g' urls.txt

我想知道如何只獲得該host領域。包文件提到了一個-keep參數,但源實現並未顯示它是可用的。

我知道可以通過將輸出管道傳輸到其他程序並處理它來實現我想要的輸出,但是有可能在這個命令中實現我想要的嗎?

但源實現並沒有顯示它是可用的。

它不是在 Regexp::Common::URI 中實現的,而是從 Regexp::Common 繼承的。並且使用此參數按記錄工作:

perl -MRegexp::Common=URI -nE \
 'say $3 while /$RE{URI}{HTTP}{-scheme => "https?"}{-keep}/g' \
 urls.txt

引用自:https://unix.stackexchange.com/questions/684913