UUID.randomUUID()。toString()。replaceAll(“\ W”,“”);
上述陈述中“\ W”的含义是什么? 它取代了非字母数字吗? 这个replaceAll方法改变了整个生成的随机值。 让我们说吧 1. UUID.randomUUID()。toString() 2. UUID.randomUUID()。toString()。replaceAll(“\ W”,“”); 1& 2个值完全不同 请指教 。 提前感谢您的回复
答案 0 :(得分:2)
正如Java API文档所述:
String.replaceAll(String regex, String replacement)
将此字符串中与给定正则表达式匹配的每个子字符串替换为给定的替换。
如您所见,第一个参数是正则表达式。要查看使用正则表达式的可用方法列表,您可以在文档中查找Pattern
类:
https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html
您会发现\\W
会查找非单词字符。在您的特定示例中,它表示将“-
”替换为“”,换句话说,您将从-
中删除所有传递给该方法的“UUID
”。