嗨我需要匹配一个字符串,字符串之间可以有0+个连字符。我正在使用PHP preg-match来做到这一点。字符可以是大写或小写。以下是一些例子:
TESTTESTtest published successfully
test-TEST-test published successfully
Test-test published successfully
我的正则表达式需要捕获所有这些不同的情况。
我逐行记录日志并尝试将下面的正则表达式与每行匹配。
这是我目前的if声明:
if(preg_match('/(\w*) published successfully/',$line,$matches){
}
我只是使用\ w *作为我的角色捕获,因为我之前不需要担心连字符,但我需要调整它来处理新的场景。任何人都可以帮助我吗?
答案 0 :(得分:1)
如果您不需要担心null
这样的边缘情况,您只需要将----- published successfully
和\w
添加到字符类 {{ 1}}(我还建议使用-
量词来匹配1个或多个匹配项,而不是0或更多,以避免获得空匹配):
[...]
请参阅regex demo。