如何從給定字符串中排除@#$%^ & * *
回答
試試這個:
$str= preg_replace("/[^a-zA-Z0-9_\-\/=]+/", "", 'your string here');
這樣只允許共同接受的字符。不包括你提到的字符。
或者你可以試試這個太:
$str = '@ # $%^&*';
$new_str = str_replace(array('@', '#', '$', '%', '^', '&', '*'), '', $str);
print $new_str;
您可以指定多個字符使用str_replace
更換:
$s= 'what a @bad #$%^ string *';
$s= str_replace(array('@', '#', '$', '%', '^', '%', '*'), '', $s);
echo($s);
這將輸出繼電器:
what a bad string
$thisIsaVeryBadStringIndeed = "@wh#at %a b^a&d @#$%^&*string";
$unWantedBadCharacters = "@#$%^&*";
$chars = preg_split('//',$unWantedBadCharacters);
for ($i=0;$i<strlen($unWantedBadCharacters);++$i)
$pairs[$unWantedBadCharacters{$i}] = '';
$stringWithoutBadCharacters = strtr($thisIsaVeryBadStringIndeed,$pairs);
這是fa之一ster方法。如果您只創建一次配對數組。
哦,是的,我知道我不會取代個別字符。這真的是個問題嗎? – 2009-12-30 09:42:22
+1,不應該downvote b/c問題是模糊的! – pix0r 2009-12-30 09:44:32
我將問題解釋爲「@#$%^&*」是一個字符串,因爲您爲什麼會在那裏有兩個空格? – 2009-12-30 09:46:03
一個簡單的正則表達式將做這件事:
$str = preg_replace('/[@#$%^&*]/', '', $str);
在這裏使用正則表達式就像使用大炮來殺死一隻蒼蠅。 – 2009-12-30 09:52:36
是嗎?編寫的時間越短,執行的速度越快,我可以想到的任何其他方式。 – 2009-12-30 09:53:53
比一個簡單的'str_replace()'或者一個'strtr()'更快嗎? – 2009-12-30 09:55:40
- 1. php代碼排除谷歌
- 2. php排除一段html代碼?
- 3. PHP代碼嗅探器排除模式
- 4. 排除UISpec中的代碼
- 5. 排除代碼,Java的
- 6. WebRTC代碼故障排除
- 7. 排除UDP代碼故障
- 8. PHP SQL循環 - 排除循環中最後一個代碼
- 9. 從PHPUnit代碼覆蓋率中排除PHP接口
- 10. 如何在PHP代碼中排除INDEX或主頁?
- 11. PHP代碼,以排除使用index.php的水珠
- 12. 從某個頁面排除adsense的PHP代碼?
- 13. 如何在php中排除代碼如果參數是肉?
- 14. 排除的PHP代碼的某些行從sonarqube分析
- 15. Chutzpah代碼覆蓋排除文件夾
- 16. 使用SevenZipSharp代碼排除文件
- 17. 排除這種ASM x86代碼
- 18. 從代碼覆蓋率排除模式?
- 19. EF代碼首先排除列
- 20. 塊碰撞代碼故障排除
- 21. 排除PITest中的某些代碼行
- 22. 排除Google代碼段中的元素?
- 23. 並行代碼故障排除
- 24. CKEditor HTML代碼故障排除
- 25. 從Builds中暫時排除代碼
- 26. 代碼排除週末銀行假期
- 27. 排除拒絕合作的Java代碼
- 28. 從源代碼管理中排除app.config?
- 29. 排除聲吶中生成的代碼
- 30. ExcludeFromCodeCoverage排除自動生成的代碼
你的意思是像除外刪除或類似不允許? – Gumbo 2009-12-30 09:39:55
'請你寄給我代碼','請幫助我'在你的問題中的部分是不需要的(並且在這裏通常會皺起眉頭)。只要以serieus的方式提問問題,你就會在這裏得到答案(不要求他們 - 請;-) – ChristopheD 2009-12-30 09:43:54
@ChristopheD - 然後編輯它! – 2009-12-30 09:45:01