How to escape only certain characters
escaping, php, regex
Solution
This may help you:
<?php
$subject = "+ - && || ! ( ) { } [ ] ^ \" ~ * ? : /";
$result = preg_replace('%([+\-&|!(){}[\]^"~*?:/]+)%', '\\\\$1', $subject);
echo $result;
?>
http://ideone.com/EYV1ID
Problem
php function `preg_quote` escapes these characters `. \ + * ? [ ^ ] $ ( ) { } = ! < > | : -` Could you please suggest what I could use to escape these characters: `+ - && || ! ( ) { } [ ] ^ " ~ * ? : /` Edited (as requested by "on hold"): I'm implementing a `Solr` search and it says: Solr gives the following characters special meaning when they appear in a query: + - && || ! ( ) { } [ ] ^ " ~ * ? : / To make Solr interpret any of these characters literally, rather as a special character, precede the character with a backslash character .