使用正则表达式从地址中删除特殊字符

时间:2017-02-06 10:16:26

标签: java regex

我是正则表达的新手, 我想从地址中删除带有空格的特殊字符(""),但如果在单词之间出现特殊字符,则删除时不会有空格("")。

示例:

  

先生。 RAHIMATH BEGH MD H NO 1-7-59 KUMMARI BAZAR SURYAP [ET AP INDIA

下面,

1) - 将被"删除"

2)。将删除" "

但是 3)[将被删除""

表示输出类似于:

的输出
  

RAHIMATH BEGH先生MD H NO 1 7 59 KUMMARI BAZAR SURYAPET AP INDIA

提前致谢。

3 个答案:

答案 0 :(得分:0)

String str="Mr. RAHIMATH BEGH MD H NO 1-7-59 KUMMARI BAZAR SURYAP[ET AP INDIA";
str=str.replaceAll("\\.|\\-"," ").replace("[","");;
System.out.println(str);

导致此输出: RAHIMATH BEGH先生MD H NO 1 7 59 KUMMARI BAZAR SURYAPET AP INDIA

答案 1 :(得分:0)

你需要做2 replaceAll()。一个用于1)和2)和一个用于3)和所有其他潜在的特殊字符。此示例将为您提供问题的预期输出

String s = "Mr. RAHIMATH BEGH MD H NO 1-7-59 KUMMARI BAZAR SURYAP[ET AP INDIA";
s = s.replaceAll("[\\\\.-]+", " ");
s = s.replaceAll("[^a-zA-Z\\d\\s:]", "");

答案 2 :(得分:0)

String yourString =" Mr。 RAHIMATH BEGH MD H NO 1-7-59 KUMMARI BAZAR SURYAP [ET AP INDIA";

yourString = yourString.replaceAll(" \。| \ - ",""); //这取代"。"和" - "有空格。

yourString = yourString.replace(" [""&#34); //替换[与""

希望它有所帮助:)