小编典典

如何使用正则表达式检查一行是否为空白

all

我正在尝试制作简单的正则表达式来检查一行是否为空白。

案子;

"    some"   // not blank
"   " //blank
"" // blank

阅读 116

收藏
2022-07-08

共1个答案

小编典典

您想要的模式在多行模式下是这样的:

^\s*$

解释:

  • ^是字符串锚的开始。
  • $是字符串锚的结束。
  • \s是空白字符类。
  • *是零次或多次重复。

在多行模式下,^$匹配行的开头和结尾。

参考:


非正则表达式替代方案:

您还可以line通过 -ing 检查给定字符串是否为“空白”(即仅包含空格)trim(),然后检查结果字符串是否isEmpty()

在 Java 中,这将是这样的:

if (line.trim().isEmpty()) {
    // line is "blank"
}

正则表达式解决方案也可以在没有锚的情况下简化(因为matches在 Java 中是如何定义的),如下所示:

if (line.matches("\\s*")) {
    // line is "blank"
}

API 参考

2022-07-08