我写了一个正则表达式来捕获输入字符串中的特殊字符,但它也捕获了数字。这是正则表达式,
final String REGEX="[^.,%*$#@?^<!&>'|/\\\\~\\[\\]{}+-=\"]*";
我只需要抓住上面提到的字符。请帮帮我。
答案 0 :(得分:2)
您使用未转义的连字符创建了一个范围。
错位的连字符使模式匹配这些字符:
在课程结束时逃离连字符或位置:
final String REGEX="[^.,%*$#@?^<!&>'|/\\\\~\\[\\]{}+=\"-]*";
^
答案 1 :(得分:2)
将连字符(-
)移动到角色类的末尾:
final String REGEX="[^.,%*$#@?^<!&>'|/\\\\~\\[\\]{}+=\"-]*"
当前位置(+-=
),表示从+
到=
的范围。这个范围包括,a.o。所有数字。