আমি মনে করি এটি যথেষ্ট হবে:
#!python
import re
pattern = re.compile(r'<title>([^<]*)</title>', re.MULTILINE|re.IGNORECASE)
pattern.search(text)
... ধরে নিচ্ছেন যে আপনার পাঠ্য (এইচটিএমএল) "পাঠ্য" নামের একটি ভেরিয়েবলে রয়েছে।
এটিও ধরে নিয়েছে যে এমন কোনও এইচটিএমএল ট্যাগ নেই যা আইনীভাবে এইচটিএমএল টাইটেল ট্যাগের অভ্যন্তরে এম্বেড করা যেতে পারে এবং এই জাতীয় ধারক / ব্লকের মধ্যে অন্য কোনও কোনও চরিত্রকে আইনীভাবে এম্বেড করার কোনও উপায় নেই।
তবে ...
পাইথনে HTML পার্সিংয়ের জন্য নিয়মিত এক্সপ্রেশন ব্যবহার করবেন না। এইচটিএমএল পার্সার ব্যবহার করুন! (আপনি যদি একটি সম্পূর্ণ পার্সার লিখতে যাচ্ছেন না, যা বিভিন্ন HTML, এসজিএমএল এবং এক্সএমএল পার্সারগুলি ইতিমধ্যে স্ট্যান্ডার্ড লাইব্রেরিতে রয়েছে তখন অতিরিক্ত কাজ হয়ে যাবে।
আপনার হ্যান্ডলিং "বাস্তবিক পৃথিবীতে" যদি ট্যাগ স্যুপ এইচটিএমএল (যা ঘন ঘন কোনো যার SGML / এক্সএমএল যাচাইকারী অ অনুসারী থাকে) তাহলে ব্যবহার BeautifulSoup প্যাকেজ। এটি স্ট্যান্ডার্ড লাইব্রেরিতে নেই (এখনও) তবে এই লক্ষ্যে প্রশস্ত প্রস্তাব দেওয়া হয়েছে।
অন্য বিকল্পটি হ'ল: lxML ... যা সঠিকভাবে কাঠামোগত (স্ট্যান্ডার্ডস কনফর্মেন্ট ) এইচটিএমএল জন্য লেখা। তবে এতে পার্সার হিসাবে বিউটিফুলসপ ব্যবহার করার ক্ষেত্রে ফলব্যাক করার বিকল্প রয়েছে: এলিমেন্টসপ ।