回答
看來你正在使用正則表達式提取span
元素的內容。現在,儘管all的reasons爲什麼this is not這樣一個好主意......
...只是保持你有的表達。然後,如果您有匹配項,請過濾掉應該被拒絕的匹配條目。例如,
var $match = extractContentFromHtml($html); // use regex here, return false if no match
if ($match && validMatch($match)) {
// do something
}
其中validMatch(string)
應該檢查值是否存在於某個數組中。
嗯,我明白了你的觀點,但在這種情況下,我並不需要關心[X] HTML格式或其他什麼,因爲只有''標籤會發生變化 - 我真的不知道解析數百個結果與附加函數,當正則表達式(據我所知)可以排除某些結果,如果文本確實包含一個指定的字符串。有一些條件已經存在,爲什麼另一個簡單的可能會威脅? – Scott
我不確定從原始輸入中提取什麼內容。如果它只是一些簡單的'span' HTML字符串(而不是整個HTML文檔),那就夠了。如果它是一個很大的HTML塊,你應該解析它並從跨度中提取文本節點,然後收集它們。無論如何,AFAIK,正則表達式意味着匹配的東西,而不是相反的,它不僅在心理上更安全,它分兩步完成,它會更清晰,更可維護:) –
你可能下面通過一個匹配循環來你的正則表達式。在這種情況下,只需檢查dontwantthis
子字符串和continue
是否最簡單。試圖在正則表達式中實現它只是要求麻煩。
您能解釋一下更多關於這種情況下的「麻煩」嗎?我正在學習正則表達式,只是好奇。 – Scott
你見過一個電子郵件的正則表達式嗎? [This](http://www.regular-expressions.info/email.html)就是當有人嘗試用正則表達式完成所有事情時所產生的東西。 –
- 1. 正則表達式,如果一個字符串包含所有特定符號
- 2. Validade如果字符串包含一個正則表達式串
- 3. SQL正則表達式,如果字符串包含一定子
- 4. preg_replace_callback(正則表達式)如果字符串不包含字符
- 5. 正則表達式,如果字符串包含字符
- 6. 正則表達式不包含特定的字符串
- 7. 正則表達式:捕捉句子如果字符串包含特定模式
- 8. 正則表達式字符串包含
- 9. 所有字符串的正則表達式不包含特定的字符串
- 10. 正則表達式包含字符串,不包含另一個
- 11. 正則表達式:在搜索中包含文本字符串
- 12. 正則表達式問題,如果字符串包含\ n
- 13. POSIX正則表達式顯示行,如果包含字符串
- 14. 正則表達式特定字符串
- 15. 正則表達式僅匹配不包含特定字符的字符串
- 16. 如何查找字符串包含正則表達式的特殊字符與正則表達式
- 17. C#正則表達式 - 如果字符串只包含一個字符
- 18. 正則表達式不包含多個特定單詞的字符串
- 19. 正則表達式匹配字如果字符串不包含另一個字
- 20. 正則表達式語法(一個特定的字符串+正則表達式)
- 21. 包含我們貨幣的正則表達式/ grep字符串
- 22. 正則表達式模式匹配對字符串不包含特定模式
- 23. 正則表達式:不匹配,如果含有的特定字符串
- 24. 正則表達式匹配包含特定字符串只有整個標籤
- 25. JavaScript的:找正則表達式,如果字符串以特定字符串
- 26. 包含空格的多個字符串的正則表達式
- 27. 正則表達式匹配的字符串,如果該字符串不包含特殊字符
- 28. 正則表達式:如何包含「如果」條件的字符
- 29. 正則表達式查找單詞包含特定字符
- 30. Python正則表達式檢查是否包含特定字符
你的客戶寫了什麼? – hd1
@ hd1對不起,它的'PHP 5.4'。 – Scott
**不要使用正則表達式來解析HTML **。您無法可靠地使用正則表達式解析HTML。只要HTML從你的期望改變,你的代碼就會被破壞。有關如何使用PHP模塊正確解析HTML的示例,請參閱http://htmlparsing.com/php.html。 –