Question: I have a variable in a stored procedure that contains a string of characters like

```
[Tag]MESSAGE[/Tag]

```

I need a way to get the `MESSAGE` part from within the tags.
Any help would be much appreciated

Answer: 
**Note:** I have tested it on Oracle RDBMS

A more reliable approach is to use **REGEXP\_REPLACE.**

```
REGEXP_REPLACE(value, pattern)

```

Example

```
SELECT  REGEXP_REPLACE(
        '<Tag>Message</Tag>',
         '\s*</?\w+((\s+\w+(\s*=\s*(".*?"|''.*?''|[^''">\s]+))?)+\s*|\s*)/?>\s*') FROM DUAL;

```

Just replace "<" with "[" if your tags are different
What you need is this:

```
SELECT SUBSTRING(ColumnName,CHARINDEX('html_tag',ColumnName)+LEN('html_tag'),CHARINDEX('html_close_tag',ColumnName)-LEN('html_close_tag')) FROM TableName

```

You'll require to change the `html_tag` and `html_close_tag` with your own HTML tag that you want to get rid of.