2019 7.1研究ノート

正規表現を追加しました:

^(キャレット):...表示を開始する(試合で使用されていないことと同じ操作である。もし、括弧内に、代表が否定操作されています)       

 $:XX ...年末で終了する必要がありますすることを示し   

 |:マッチ複数の式または文字

貪欲と非欲張りモード

貪欲:正規表現は、できるだけ多くの文字にマッチします(デフォルト貪欲モード)

非貪欲モード:正規表現に一致する文字はできるだけ少ないのでしょうか?

#のテキスト= "タイトル<の/ H1> <H1の>" RET = re.match( '<。?+>'、テキスト)
#の印刷(ret.group()) 

出力:<H1>
#1 0〜100のマッチフィギュア
#のテキスト= "1001" | RET = re.match(、テキスト'?100 $ [1-9] [0-9] $') 印刷(ret.group())

 モジュールに使用される関数を再

 グループのグループ化

#のテキストは= "リンゴの価格は、オレンジの価格は$ 10、$ 99、" RET = re.search( '*(\ $の\ dが+)。*(\ $ \ d +)'を、テキスト)
#1 )印刷(ret.group( )#等价于プリント(ret.group(0)) プリント(ret.group(1)) プリント(ret.group(2)) プリント(ret.groups())#等价于プリント(RET .group(1,2))

findAll

リストを返し、すべての条件を満たして下さい

サブ

他の文字列にマッチした文字列

re.sub(パターン、REPL、文字列、カウント= 0、フラグ= 0)

スプリット

サブストリングマッチング結果をよると、分割後の文字列のリストを指定できます

コンパイル

効率を改善するために、メモリ内の正規表現コンパイラ

#のテキスト"ナンバーがで20.50 IS" = R = re.compile(R "" "      小数点の前の\ dの+# #
。?#     小数点自体(または存在しないかもしれないが)     \はD *#は小数点の後の数字(のことができます。 )が存在しない ""」、re.VERBOSE)
#1 RET = re.search(R&LT、テキスト)
#1 印刷(ret.groupを())

古代の詩のネットワークをクロール

インポートインポート要求が

DEF (URL)をparse_page:
    ヘッダー = {
         " ユーザエージェント"" はMozilla / 5.0(Windows NTの10.0; WOW64)のAppleWebKit / 537.36(KHTML、ヤモリ等)クローム/ 68.0.3440.106サファリ/ 537.36 " 
    } 
    応答 = requests.get(URL、ヘッダ)
    テキスト = response.text 
    タイトル = re.findall(R ' <DIV CLASS = "続き">。*?<B>(。*?)</ B> ' 、テキスト、再.DOTALL)
     プリント(タイトル)
    王朝 = re.findall(R '<Pクラス= "ソース">。*?<。*?>(。*?)</a>の' テキスト、re.DOTALL)
    著者 = re.findall(R ' <Pクラス= "ソース"> 。*?<。*?<。*?>(。*?)</a>の' テキスト、re.DOTALL)
    content_tags = re.findall(R ' <DIV CLASS = "contson"。*?> </ div>(*。?)' テキスト、re.DOTALL)
    内容 = []
     のためのコンテンツcontent_tags:
        X = re.sub(R ' <。*?> """ コンテンツ)
        contents.append(バツ。ストリップ())  = []
     のためのZIP(タイトル、王朝、著者、コンテンツ):
        タイトル、dynastie、著者、コンテンツ =  = {
             ' タイトル' :タイトル、
             ' dynastie ' :dynastie、
             ' 作成者' :著者、
             ' コンテンツ' :コンテンツ
        } 
        詩。 (詩)を追加
    するためににおける詩:
         プリント(詩)
         プリント=  * 40 

デフメイン()
     のために、私は範囲(1,11 ):
        URL = ' https://www.gushiwen.org/default_%s.aspx '%は、iが
        (URL)をparse_page 

場合 __name__ == ' __main__ ' 
    メイン()

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/jyjoker/p/11111989.html