13
A
回答
24
有Unicode字符類thingys,您可以使用:
- http://www.regular-expressions.info/unicode.html
- http://php.net/manual/en/regexp.reference.unicode.php
要匹配任何非字母符號,您可以使用\PL+
,否定\p{L}
。要不刪除空格,請使用像[^\pL\s]+
這樣的charclass。或者真的只是刪除標點符號\pP+
那麼,顯然不要忘記正則表達式/u
修飾符。
0
類似的帖子
Remove non-utf8 characters from string
我不知道如果這雖然涵蓋了所有的字符。
根據這個職位上個dreamincode論壇
http://www.dreamincode.net/forums/topic/78179-regular-expression-to-remove-non-ascii-characters/
這應該工作
/[^\x{21}-\x{7E}\s\t\n\r]/
0
也許這將是有益的?
$newstring = preg_replace('/[^0-9a-zA-Z\s]/', $oldstring);
+2
這也會刪除非ASCII字符。我不想要這個 – Thomas
1
我用這個:
$clean = preg_replace("/[^\p{L}|\p{N}]+/u", " ", $raw);
$clean = preg_replace("/[\p{Z}]{2,}/u", " ", $clean);
+0
你能描述一下究竟發生了什麼嗎? –
相關問題
- 1. 正則表達式從字符串中刪除字符串
- 2. 正則表達式C++刪除所有非字母字符
- 3. 從字符串正則表達式刪除字符串
- 4. 使用正則表達式從字符串中刪除字符
- 5. 正則表達式從字符串中刪除字符
- 6. 正則表達式字母數字字符串+特殊字母
- 7. 使用正則表達式在Eclipse中刪除非utf8字符
- 8. 從字符串中刪除非字母數字字符
- 9. Python的正則表達式除了括號從字符串中除去非字母數字字符
- 10. 正則表達式:拆分字符串字母數字/數字
- 11. 正則表達式 - 檢測字母數字字符串不是由非字母數字字符串包圍
- 12. 正則表達式 - 刪除所有非字母數字字符CRLF問題
- 13. 通過正則表達式替換刪除非字母數字字符
- 14. Javascript正則表達式來從字符串中刪除字符和數字
- 15. 正則表達式從數字刪除字符,但並非所有的字符
- 16. 刪除字符的字符串中的JavaScript正則表達式
- 17. 正則表達式的Java非字母數字字符匹配
- 18. 正則表達式拒絕非字母數字字符
- 19. Swift:檢測非字母數字字符的正則表達式
- 20. 與非字母數字字符匹配的正則表達式
- 21. 從字符串中刪除不符合正則表達式規則的字符
- 22. PHP正則表達式 - 從字符中刪除爲字符?
- 23. 正則表達式從字符串中提取字母數字+符號組合
- 24. Java正則表達式 - 刪除除字符以外的非字母數字字符
- 25. 正則表達式在字符串上查找字母數字
- 26. 使用正則表達式提取字母數字字符串
- 27. 這個字母數字字符串的正則表達式
- 28. 字符串上的字母數字正則表達式
- 29. 正則表達式從字符串中刪除換行符
- 30. 從字符串中刪除所有非字母,非數字字符?
你想只保留一個' - z'和'0-9'?或者是來自不同語言的所有特殊字符? – Marcus
解釋爲什麼我的結果建議更好的方法。 – 2011-12-01 20:19:40
@馬庫斯。我需要保留unicode字符 – Thomas