[英]Java String/Regex Replace
我是正则表达式的新手。 不确定如何执行以下操作:
将“:p_id”替换为特定值。
例如,当我只想用一个值替换“:p_id1”时,它也用不是我想要的相同值替换“:p_id10”。
也可能在“:p_id”之前或之后标点,例如“ =:p_id1)”
有什么建议吗?
您可以在图案结尾处使用负前瞻。
例如:
Pattern pattern = Pattern.compile(":p_id\\d(?!\\d)");
String example = ":p_id1 :p_id10";
Matcher matcher = pattern.matcher(example);
while (matcher.find()) System.out.println(matcher.group());
输出:
:p_id1
这是我制作的模式:
^[=]{0,1}:p_id1\b[=]{0,1}
这匹配如下字符串:
:p_id1
=:p_id1
:p_id1=
但不匹配(例如):
:p_id10
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.