[英]PHP RegEx string Replace
我最近寫了一個JavaScript RegExp來清理前端的數據,現在我需要對PHP后端執行完全相同的操作,但是有一段時間我沒有在PHP中工作過。 以下是JavaScript RegExp,有人可以幫我將其轉換為PHP嗎?
var illegalChars = /[\(\)\<\>\,\;\:\.\~\@\#\$\!\%\^\&\*\'\?\(\)\+\=\{\}\`\\\/\"\[\]]/gi;
var siteSuggest = $(this).val().toUpperCase().split(' ').join('').replace(new RegExp(illegalChars), "");
因此,總而言之,我想全局刪除所有非法字符,刪除空格並大寫該變量,因為該變量將用於在sql中創建數據庫或表。
老實說,我認為您最好指定好字符,而不是嘗試查找所有壞字符(畢竟,您忘記了很多非ASCII字符)。 我會做類似的事情:
$regex = '#[^a-z0-9_]#i';
$val = preg_replace($regex, '', $val);
$val = strtoupper($val);
此正則表達式將包含所有字母,數字和_的允許字符。 如果您想要更多,只需將它們添加到角色類中即可。 不需要在空格上分割,因為正則表達式將匹配空格(字符類開始處的^是負數)...
您可以這樣調整JS:
var illegalChars = /[^a-z0-9_]/gi;
var siteSuggest = $(this).val().replace(new RegExp(illegalChars), '').toUpperCase();
$illegal_chars = array(' ', ';', '~', '@', ...);
strtoupper(str_replace($illegal_chars, '', $value));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.