سؤال

واني اسعى الى العمل على النفقات العامة للASP.NET لصناعة السيارات في تسمية عناصر تحكم الملقم. لدي صفحة والذي يحتوي على 7000 خطوط HTML المقدمة من المئات من الضوابط ASP.NET المتداخلة، وكثير منها لها سمات الهوية / الاسم الذي المئات من حرفا.

ما أود مثالي مثل شيء من شأنه أن استخراج كل قيمة السمة HTML الذي يبدأ ب "ctl00" في القائمة. ان وظيفة التعابير المنطقية بحث في المفكرة ++ تكون مثالية، إلا إذا كنت أعرف ما يجب أن يكون التعبير المعتاد؟

وعلى سبيل المثال، إذا كان HTML هي:
<إدخال اسم = "ctl00 $ رأس $ البحث $ كلمات" نوع = "نص" MAXLENGTH = "50" الطبقة = "بحث" />

وأود الإخراج إلى أن يكون شيئا مثل:
اسم = "ctl00 $ رأس $ البحث $ كلمات"
ويمكن أن تشمل بحث أكثر تقدما اسم العنصر وكذلك (على سبيل المثال، اكتب control):
المدخلات | اسم = "ctl00 $ رأس $ البحث $ كلمات"

في أجل التعامل مع كل رقم واسم سمات وسوف ببساطة إعادة تشغيل أبحث عن رقم بدلا من اسم (أي أنا لست بحاجة إلى شيء من شأنها أن البحث عن سواء في نفس الوقت). وبحث

والناتج النهائي سيكون تقرير التفوق الذي يسرد عددا من الضوابط الخادم على الصفحة، وطول اسم كل وربما مرتبة حسب نوع عنصر التحكم.

هل كانت مفيدة؟

المحلول 3

وردا على سؤالي الخاص، وأسهل طريقة للقيام بذلك هو استخدام BeautifulSoup، و"القذرة HTML" محلل بيثون التي الشعار هو:

"أنت لم يكتب تلك الصفحة فظيعة. أنت مجرد محاولة للحصول على بعض البيانات للخروج منه. والآن، كنت لا تهتم حقا ما يفترض HTML لتبدو وكأنها. لا يفعل هذا المحلل . "

وكان يعمل، وأنها متاحة من هنا - http://crummy.com/software/BeautifulSoup

نصائح أخرى

وسريعة وقذرة:

وابحث عن

\w+\s*=\s*"ctl00[^"]*"

وهذا سوف تطابق أي نص يشبه سمة، على سبيل المثال name="ctl00test" أو attr = "ctl00longer text". انها لن تحقق ما إذا كان هذا يحدث حقا داخل علامة HTML - وهذا أكثر قليلا من الصعب القيام به، وربما لا داعي لها؟ كما أنها لن تحقق ليقتبس هرب ضمن اسم العلامة. وكما جرت العادة مع regexes، ومدى تعقيد المطلوب يعتمد على ما تريده بالضبط لتتناسب وما يبدو الإدخال مثل ...

و"7000"؟ "مئات"؟ عزيزي الله.

ومنذ كنت تبحث فقط في مصدر في محرر النص، وهذه محاولة ... / (معرف | الاسم) = "ط [^"] * "/

وأقترح كسباث، كما هو الحال في هذه <لأ href = "https://stackoverflow.com/questions/99279/how-do-you-parse-a-web-page-and-extract-all-the-href -links # 100197 "> السؤال

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top