用于查找超过 1 个空格但不以换行符结尾的字符串的正则表达式

标签 regex

正则表达式专家,请在这里帮助我:

我需要一个正则表达式来查找多个不以换行符结尾的空格。例如考虑以下文本:

Column 1       Column 2       Column 3        Column 4
Column 1       Column 2       Column 3        Column 4

正则表达式应匹配 X 列之间的空格,其中 X = 1、2 或 3,但不应匹配第 4 列之后的空格。正则表达式也不应匹配单词“列”及其相应编号之间的单个空格。

我试过 \s+^(\n) 但它不起作用

最佳答案

你可以使用这个正则表达式:

/ {2,}(?! *$)/gm

RegEx Demo

解释:

  • {2,} - 匹配 2 个或更多空格
  • }(?! *$) - 是一种否定前瞻,确保在输入结束前只有 0 个或更多空格时不匹配
  • m 标志确保每个换行符都与 anchor $ 匹配(在前瞻中使用)

关于用于查找超过 1 个空格但不以换行符结尾的字符串的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27448348/

相关文章:

c - flex 无法识别字符范围

regex - 在Delphi中使用Regex替换字符串

c - 轻量级正则表达式解析器

python - 使用正则表达式解析 winerror.h 和 ntstatus.h 状态/定义

python - 用python从不规则值中提取数字

java - 通过 JMeter 正则表达式解析 HTML

java - 计算文件中特定字符串的出现次数

python - 使用python正则表达式匹配时间

python - "select filenames whithout extansion"的负前瞻

Javascript 正则表达式模式将多个字符串(AND、OR)与单个字符串匹配