Q:

How can I remove characters around words?

I need to remove all characters that are not alphabetical from the beginning and end of each word.  For example:  

--Hello& World-@  1234...

Should look like: 

Hello World   1234

I tried replaceAll, but I have no idea how many different characters I need to remove or what those characters are.  I tried the following, but it didn't work.
word = resultString.replaceAll("[^a-zA-Z_0-9|$a-zA-Z_0-9]|^-|$-|^--|$--|^---|$---|\\$", "");

There were still words that showed up with dashes.
Is there another way to do this without using replaceAll?

A:

To be strict, all the answers don't solve exactly what the author asked. The problem is that they all will delete special characters even inside words, and not only "from the beginning and end of each word".
Here is the code which fixes it:
String str = "--Hello& World-@ 1234...  my email is me@example.com";

// Analyzing every word     
String[] words = str.split("\\s+");
String regex = "^[^a-zA-Z0-9]+|[^a-zA-Z0-9]+$";
String result = "";

for (String word : words) {
    result += word.replaceAll(regex, "") + " ";             
}

System.out.println(result); // gives "Hello World 1234 my email is me@example.com "

Regex "^[^a-zA-Z0-9]+|[^a-zA-Z0-9]+$" explanation:
^[^a-zA-Z0-9]+ matches one or more special characters at the beginning of the word
| OR
[^a-zA-Z0-9]+$ one or more special characters at the end of the word.
You can modify the regex in order NOT TO DELETE the ,.!?:; or other meaningful characters at the end of a word.

