Java 正则表达式-我需要替换所有数字,但特定的3位数字除外
我想用“X”替换日志上的所有数字,但我想保留HTTP状态码作为信息 我一直在尝试不同的方法。他们都没有工作Java 正则表达式-我需要替换所有数字,但特定的3位数字除外,java,regex,Java,Regex,我想用“X”替换日志上的所有数字,但我想保留HTTP状态码作为信息 我一直在尝试不同的方法。他们都没有工作 str.replaceAll((?!5\d\d | 4\d\d)\d{3},“X”)//不起作用 //尝试发布到/shippings/X5X5X/select?调用者时出错。id=XX592:500内部\u服务器\u错误 我需要它是: 发件人: 致: 如果要选择的数字后面从不跟空格和大写字符a-Z,则可以使用负前瞻: \b[0-9]+\b(?! [A-Z]) 解释 \b[0-9]+\
str.replaceAll((?!5\d\d | 4\d\d)\d{3},“X”)//不起作用
//尝试发布到/shippings/X5X5X/select?调用者时出错。id=XX592:500内部\u服务器\u错误
我需要它是:
发件人:
致:
如果要选择的数字后面从不跟空格和大写字符a-Z,则可以使用负前瞻:
\b[0-9]+\b(?! [A-Z])
解释
在单词边界之间匹配1+个数字\b[0-9]+\b
负前瞻,断言右边的不是(?!
匹配空格和大写字符A-Z[A-Z]
关闭前瞻)
Error trying to POST to /shipments/XXXX/select?caller.id=XXXX: 500 INTERNAL_SERVER_ERROR
\b[0-9]+\b(?! [A-Z])