我有这个正则表达式
(\w+)\s*\:\s*(\W\d+)
Run Code Online (Sandbox Code Playgroud)
设置为匹配类似的东西
"price: $200"
Run Code Online (Sandbox Code Playgroud)
我需要做什么来改变它,以便它匹配"price: $200"或"$200"(如果价格:部分不存在)
我试过
(?:(\w+)\s*\:\s*)*(\W\d+)
Run Code Online (Sandbox Code Playgroud)
但这不起作用,因为它给了我第一个空匹配
怎么样:
(\w+\s*:\s*)?(\W\d+)
Run Code Online (Sandbox Code Playgroud)
这?意味着该组将出现 1 次或 0 次。您可以添加自己的捕获组以方便数据获取。