当前位置: 首页 > 面试题库 >

Java正则表达式:检查单词是否包含非字母数字字符

郜俊健
2023-03-14
问题内容

这是我的代码,以确定一个单词是否包含任何非字母数字字符:

  String term = "Hello-World";
  boolean found = false;
  Pattern p = Pattern.Compile("\\W*");
  Matcher m = p.Matcher(term);
  if(matcher.find())
    found = true;

我想知道正则表达式是否错误。我知道"\W"会匹配任何非单词字符。关于我所缺少的任何想法?


问题答案:

将您的正则表达式更改为:

.*\\W+.*


 类似资料:
  • 问题内容: 我对和都错了。我想检查哈希是否仅包含数字。我错过了什么? 问题答案: 应该这样做。原始匹配的任何内容都只包含一位数字。

  • 是否有用于查找包含非罗马字符的单词的正则表达式? 以前我使用下面的正则表达式来查找单词< code>/(\w :)/,但是对于像“TV TT”这样的单词,正则表达式只查找非罗马字符“TT”后面的字母。如果我将正则表达式改为< code>/[a-zA-Z中心]\w :/,则包含字母“”,但不包含整个单词。我如何得到整个单词?

  • 所以我一辈子也想不出来。我正在尝试编写一个程序,提示用户输入电话号码。这将作为字符串输入,并在稍后的程序中转换为整数数组。然而,我现在遇到的情况是验证用户输入的字符串是否仅限于!!!包含2-9之间的数字。我已经尝试了。Contains方法和。Match方法,但是使用这些方法总是提供错误的结果。如果有人能提供一些关于如何解决这个问题,我将非常感谢。提前感谢。 以下是我目前掌握的信息:

  • 问题内容: 这个想法是读取String并确认它不包含任何数字字符。因此,“ smith23”之类的内容将不被接受。 问题答案: 你想要什么?速度还是简单?为了提高速度,请选择基于循环的方法。为简单起见,请使用一种基于内衬RegEx的方法。 速度 简单

  • 我无法找到一个合适的正则表达式来匹配任何不以某种条件开头和结尾的字符串。 但用这个我不能实现面具‘。正则表达式结尾的字符。 多谢了。

  • 我需要允许字段使用字母数字和某些其他字符。我正在使用这个正则表达式: 允许的特殊字符是 “_”。我做错了什么?