如何在正则表达式中表达多个空格?

How to express several whitespaces in a regex?

我的问题正如标题所说:有什么方法可以 "tell" 一个正则表达式,在 s 字符串的两个字段之间有一个很大的空白?对于大,我的意思是尾随白色 space 或制表符,或两者的任意组合。 问题是我正在处理字符串,我必须从中提取一些字段。类似于:

label OPCODE operand

我使用的正则表达式如下:

"([a-z]*)(\s)([A-Z]+)(\s)([a-z]*)"

问题是 java 仅将每个“\s”字符识别为一个 space,并且不计入制表符。 如果有人可以帮助我,我将不胜感激! :)

\s 元字符应占制表符。你缺少的是量词。您需要一个 +* 量词(取决于您是否允许两个段之间没有 space)来检测任意数量的白色 space。