繁体   English   中英

检查字符串是否仅包含非字母数字字符

[英]Check if string contains only non-alphanumeric characters

我需要检查字符串以查看它们是否仅包含“非字母数字字符”。 基本上我可以有一个字符串“,,.hi”,这样就可以了。 因为它包含字母数字字符以及非字母数字字符,但是一行只是“@@#!” 这将被删除。 似乎我需要某种不是正常 java 包含的“包含”。

这是我尝试过的。

if(line.matches("[^a-zA-Z\\d\\s:]")){
   line = line;
} else {
   line = line.replace(line, "");
}

如果你只是想看看它是否包含字母数字,那么你可以find()

import java.util.regex.Matcher;
import java.util.regex.Pattern;


    public String clean(String line) {
        Pattern p = Pattern.compile("\w"); 

        Matcher m = p.matcher(line);
        if (m.find()) {
          return line; // found any character or digit, keep the line
        }
        return ""; // else return nothing
    }

使用这个正则表达式:

if(!line.matches("^[a-zA-Z0-9!]*$"))

检查字符串line中是否有任何非字母数字字符:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM