回答
,除非您使用的點.
不匹配換行符s
修飾符。
>>> preg_match("/./", "\n")
0
>>> preg_match("/./s", "\n")
1
哇哈哈我正在使用,謝謝:D – David 2009-11-14 23:15:12
下面的正則表達式應匹配除換行符的任意字符
/[^\n]+/
是,除了原有的空字符串相匹配,這一次至少需要一個非斷行字符...「/ [^ \ n] * /」 (如果你使用的是Windows,您可能希望排除\ r以及...)當然 – grossvogel 2009-11-14 23:14:04
!謝謝你糾正我 – tosh 2009-11-14 23:20:55
書面上的Preg修飾符的PHP文檔頁面,點.
不包括換行符,只有當你使用s
修改。 Source
這很奇怪,因爲默認情況下點(。)不接受換行符。最可能的是你有一個爲「\ r」(回車)字符在那裏,所以你需要消除兩個:/[^\r\n]/
啊,你用/ s的
默認行爲不應與新線。因爲「s」修飾符用於使點匹配所有字符,包括新行。也許你可以提供一個例子來看看?
#!/usr/bin/env php
<?php
$test = "Some\ntest\nstring";
// Echos just "Some"
preg_match('/(.*)/', $test, $m);
echo "First test: ".$m[0]."\n";
// Echos the whole string.
preg_match('/(.*)/s', $test, $m);
echo "Second test: ".$m[0]."\n";
所以我不知道什麼是錯與您的程序,但它不是正則表達式(除非你在你的實際應用中/s
修改。
- 1. 正則表達式正則表達式正則表達式使用正則表達式,但不是與Python
- 2. Python的正則表達式新線
- 3. 正則表達式得到新線
- 4. Perl的正則表達式新線
- 5. 正則表達式打破新線
- 6. PHP-MySQLi替換爲正則表達式/正則表達式/正則表達式
- 7. 正則表達式全線
- 8. 正則表達式豎線
- 9. 正則表達式兩線
- 10. 新手PHP正則表達式問題
- 11. $正則表達式不MACHING對線
- 12. Python的正則表達式不從線
- 13. PHP正則表達式來限制新線兩個
- 14. Javascript lastIndex正則表達式屬性到PHP正則表達式
- 15. 正則表達式,正則表達式PHP
- 16. PHP + JAVASCRIPT GET正則表達式的URL正則表達式
- 17. Python正則表達式vs PHP正則表達式
- 18. 正則表達式php(正則表達式)
- 19. htaccess正則表達式vs php正則表達式
- 20. PHP的正則表達式的JavaScript正則表達式
- 21. PHP的preg_match和正則表達式的正則表達式
- 22. PHP正則表達式
- 23. PHP preg_match_all正則表達式
- 24. php preg_replace,正則表達式
- 25. PHP:對正則表達式
- 26. php preg_match正則表達式
- 27. 正則表達式&PHP $ _POST
- 28. PHP preg_replace - 正則表達式
- 29. PHP正則表達式點
- 30. Php和正則表達式
你錯了。見傑里米流轉的的答案。 – Franz 2009-11-14 23:11:52