替换特殊字符及其最右边的字符串

时间:2012-01-20 14:27:08

标签: java string

  

可能重复:
  How to replace special character and its next string with one string

我有以下字符串:

 "Hello $employee.$currency and $bankbalance"

我的任务是用另一个String替换$和以下字符串。

我会在运行时获得更多这样的字符串,并且必须扫描并识别以$开头的任何字符串,并且应该替换为相应的字符串。

在运行时,以$开头的字符串应该替换为所有出现的单个字符串

2 个答案:

答案 0 :(得分:0)

我建议使用正则表达式“\ $ [^。\ n \ 0 $] +”
找到模式的第一个和最后一个索引。

Pattern pattern = Pattern.compile("\$[^\. \\n$]+");
Matcher matcher = pattern.matcher(string)
if (matcher.find()) {
    start = matcher.start()
    end = matcher.end()
    text = matcher.group()
}

并替换该字符串的那一部分。

答案 1 :(得分:0)

String st = "Hello $employee.$currency and $bankbalance";
String pattern = "[$]\\w+";
String res = st.replaceAll(pattern,"mystring");
System.out.println(res);

输出= Hello mystring.mystring and mystring

Java regex tutorial