Inspectopedia Help

Suspicious regex expression argument

Reports calls to String.replaceAll() or String.split() where the first argument is a single regex meta character argument.

The regex meta characters are one of .$|()[{^?*+\. They have a special meaning in regular expressions. For example, calling "".replaceAll(".", "-") produces "-----", because the dot matches any character. Most likely the escaped variant "\\." was intended instead.

Using File.separator as a regex is also reported. The File.separator has a platform specific value. It equals to / on Linux and Mac but equals to \ on Windows, which is not a valid regular expression, so such code is not portable.


s.replaceAll(".", "-");

After the quick-fix is applied:

s.replaceAll("\\.", "-");

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3


Java, 233.SNAPSHOT

Last modified: 13 July 2023