<p>How can I escape a bracket in a full-text SQL Server <code>contains()</code> query? I've tried all the following, <em>none</em> of which work:</p>

<pre><code>CONTAINS(crev.RawText, 'arg[0]')
CONTAINS(crev.RawText, 'arg[[0]]')
CONTAINS(crev.RawText, 'arg\[0\]')
</code></pre>

<p>Using double quotes does work, but it <strong>forces the entire search to be a phrase</strong>, which is a showstopper for multiple word queries. </p>

<pre><code>CONTAINS(crev.RawText, '"arg[0]"')
</code></pre>

<p>All I really want to do is escape the bracket, but I can't seem to do that..</p>

Not in the spirit of fulltext indexing apparently.
word
Is a string of characters without
  spaces or punctuation.
phrase
Is one or more words with spaces
  between each word.
And
Punctuation is ignored. Therefore,
  CONTAINS(testing, "computer failure")
  matches a row with the value, "Where
  is my computer? Failure to find it
  would be expensive."
I'm not sure what your options are.
Obviously
```
LIKE
```
works fine:
```
```
SELECT *
FROM dbo.stackoverflow_319730
WHERE txtcol LIKE 'arg[ [ ]0]'
```
```
But
```
```
SELECT *
FROM dbo.stackoverflow_319730
WHERE CONTAINS(txtcol, '"arg[0]"')
```
```
Even matches a column with
```
'arg[1]'
```
in it, for instance:
```
```
CREATE TABLE [dbo].[stackoverflow_319730](
    [id] [int] IDENTITY(1,1) NOT NULL,
    [txtcol] [text] NOT NULL,
 CONSTRAINT [PK_stackoverflow_319730] PRIMARY KEY CLUSTERED 
(
    [id] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

INSERT INTO [dbo].[stackoverflow_319730] (txtcol) VALUES ('arg[0]')
INSERT INTO [dbo].[stackoverflow_319730] (txtcol) VALUES ('arg[1]')
INSERT INTO [dbo].[stackoverflow_319730] (txtcol) VALUES ('some other text')
INSERT INTO [dbo].[stackoverflow_319730] (txtcol) VALUES ('arg[0], arg[1]')

EXEC sp_fulltext_catalog   'FTCatalog','create'
EXEC sp_fulltext_table     'stackoverflow_319730', 'create', 'FTCatalog', 'pk_stackoverflow_319730' 
EXEC sp_fulltext_column    'stackoverflow_319730', 'txtcol', 'add' 
EXEC sp_fulltext_table     'stackoverflow_319730','activate' 
EXEC sp_fulltext_catalog   'FTCatalog', 'start_full' 

SELECT *
FROM dbo.stackoverflow_319730
WHERE txtcol LIKE 'arg[ [ ]0]'

SELECT *
FROM dbo.stackoverflow_319730
WHERE CONTAINS(txtcol, '"arg[0]"')
```
```
With results which hint at the problem with punctuation:
```
```
id          txtcol
----------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1           arg[0]

(1 row(s) affected)

id          txtcol
----------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1           arg[0]
2           arg[1]
4           arg[0], arg[1]
Informational: The full-text search condition contained noise word(s).
```
```