匹配字符串,包含以4位正则表达式

时间:2018-03-17 18:37:52

标签: php regex string pcre

我正在尝试匹配以下类型的字符串:

匹配
- 4738
- 3333

不匹配
- 0447 7474
   9495 - 8485
/ 2848
/ 9949
- 584888

所以我制作了这个正则表达式:/^(- )?(?=\d{4})$/但是这与我的目标字符串不匹配:- 8549
这是我需要分析的数据:
enter image description here

我对正则表达式很新,所以欢迎所有提示和建议如何解决这个问题。

提前致谢

2 个答案:

答案 0 :(得分:1)

这应该有效:

/^(- )?(\d{4})$/

如果您不需要捕获任何群组:

/^(?:- )?\d{4}$/

答案 1 :(得分:1)

如果您尝试/^-\s\d{4}$/,它应该可以解决问题;)