java regex允许可选的空格字符

时间:2013-07-31 23:18:26

标签: java regex

我正在尝试创建匹配abcdefabc def等的正则表达式模式。

我尝试的模式是:

[a-z]{3}[\s?][a-z]{3}
[a-z]{3}[\s*][a-z]{3}
[\w]{3}[\s?][\w]{3}
\w{3}\s?\w{3}

所有这些似乎适用于abc def,但不适用于abcdef

{编辑}

AB CD 12 ABC/15 DEF
.*\bAB CD\b\s?(\d+)\s?\bABC\b[/](\d+)\s?\bDEF\b

我想提取12和15。

2 个答案:

答案 0 :(得分:4)

怎么样:

[\w]{3}\s?[\w]{3}

或任何其他组合。只需从括号中删除\s或将量词(即* and ?)放在空格选择器的括号外:

[\w]{3}[\s]?[\w]{3}

你的底层 也应该。

答案 1 :(得分:1)

第一个是关闭

[a-z]{3}\s?[a-z]{3}

拿走?方括号中

java将无法正确读取它。你需要将\ s转到\ s