一个正则替换词语的问题。知道的回答以下.菜鸟 id="head"如果把head替换成aaa,但有些词header里的“head”不替换成aaa,怎么办??菜鸟问题。知道回答一下 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String str = "head header ahead \"head\""; System.out.println(str.replaceAll("\\bhead\\b", "")); String str = "head header ahead \"head\""; System.out.println(str.replaceAll("\\bhead\\b", "aaa")); 楼上正解,不过美中不足的是有的单词是有连字符"-"的.或者会在换行时被截断而加上"-"只有[a-zA-Z_0-9]会被认为是单词字符. 看楼主需要了... 看看这样做行不行,只供参考比如一个文件中有很多单词: 文件名为word.txt 把文件中的单词head换成aaaa;我个人认为只是替换不需要什么正则表达式::BufferedReader br = new BufferedReader(new FileReader("word.txt"));StringBuilder sb = new StringBulider();String s = null;while((s = br.readline()) != null){ sb.append(s); sb.append('\n');}String total = sb.toString();List<String> word = new ArrayList<String>(Arrays.toList(toatl.split(" ")));StringBulider sd = new StringBulid();for(String s : word){ if(s.eqquals(head)){ s = "aaaa"; } sd.append(s); sd.append(" ");}String text = sd.toString();在将text写入文件。。 就可以了 要是非要用正则表达式 需要先定义个 pentter ,然后用match(还是mather弄不清楚了)来实现 具体怎么做要参照API来做 自己去看看吧! 如果是把head作为一个单词看的话 ,那可以这样: public String stringPattern(String str){ String patternStr=" head "; str=str.replaceAll(patternStr,"aaa "); return str; } String str = "head header ahead \"head\"";System.out.println(str.replaceAll("\\bhead\\b", ""));用\b准确分词才是正确做法 为什么java中的方法不能写在main()里面 我对于重载和覆盖的理解。大家讨论下。 请求大侠一个数组问题 如何在程序中得出一张表的详细内容?比如主键,外键,什么的 通过包的名字可以得到包里边的所有类的名字吗?谢谢! 一个全排序问题,望高手指教! 怎样在未建立会话的时候用File来直接访问网络邻居的共享文件(用户密码已知) 失望,没人给个确定的答复,关于用实体bean管理blob类型数据 java1.3不支持中文输出,,?? 考网络(中级)有用吗?谁考过,请说一说。 大连兼职(java)!!!!!!!!!!!!!! 请大家推荐几个图形控件
System.out.println(str.replaceAll("\\bhead\\b", ""));
System.out.println(str.replaceAll("\\bhead\\b", "aaa"));
只有[a-zA-Z_0-9]会被认为是单词字符.
看楼主需要了...
比如一个文件中有很多单词: 文件名为word.txt 把文件中的单词head换成aaaa;我个人认为只是替换不需要什么正则表达式::
BufferedReader br = new BufferedReader(new FileReader("word.txt"));
StringBuilder sb = new StringBulider();
String s = null;
while((s = br.readline()) != null){
sb.append(s);
sb.append('\n');
}
String total = sb.toString();
List<String> word = new ArrayList<String>(Arrays.toList(toatl.split(" ")));
StringBulider sd = new StringBulid();
for(String s : word){
if(s.eqquals(head)){
s = "aaaa";
}
sd.append(s);
sd.append(" ");
}
String text = sd.toString();
在将text写入文件。。 就可以了
要是非要用正则表达式 需要先定义个 pentter ,然后用match(还是mather弄不清楚了)来实现 具体怎么做要参照API来做 自己去看看吧!
public String stringPattern(String str){
String patternStr=" head ";
str=str.replaceAll(patternStr,"aaa ");
return str;
}
String str = "head header ahead \"head\"";
System.out.println(str.replaceAll("\\bhead\\b", ""));用\b准确分词才是正确做法