标签: java regex
我在一个文件中搜索一个字符串,该文件中包含任何非数字字符且没有美元符号。 当我使用
[\\D&&[^$]]+
它有效,但如果我使用
[.&&[^$]]+
代码不起作用。任何人都可以解释原因。
答案 0 :(得分:1)
char类.中的[]点意味着一个点,而不是任何字符,因为它在字符类之外工作。
.
[]
你正在寻找的是一个否定的角色类:
RegEx:[^0-9$] live demo
[^0-9$]
答案 1 :(得分:0)
在字符类[]内,.字符不是通配符,而是实际的点。你不需要将点与你的"不是" char,你可以简单地写[^$0-9 ]+(但这不是你想要的)。
[^$0-9 ]+