您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

将整个单词与字符串中的前导或尾随特殊符号(例如美元)匹配

将整个单词与字符串中的前导或尾随特殊符号(例如美元)匹配

使用明确的单词边界,(?<!\w)(?!\w),而不是\b上下文相关的:

from = "(?<!\\w)" + Pattern.quote(from) + "(?!\\w)";

请参阅

(?<!\w)如果在当前位置的左侧紧邻有一个非单词char ,则是一个向后的否定后向匹配;如果在当前位置的右侧紧邻有一个非char字符,(?!\w)一个否定的向前查找使匹配失败。 。在Pattern.quote(from)逃跑中的任何特殊字符是必要的from变量。

参见Java演示

String line = "add, $temp4, $temp40, 42";
String to = "register1";
String from = "$temp4";
String outString;

from = "(?<!\\w)" + Pattern.quote(from) + "(?!\\w)";

outString = line.replaceAll(from, to);
System.out.println(outString);
// => add, register1, $temp40, 42
其他 2022/1/1 18:17:18 有547人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶